Page 245 - AngularJS权威教程
P. 245

19.6  初始化 Karma 配置文件    225


                         'lib/angular-route.js',                                                     19
                         'test/lib/angular-mocks.js',
                            ** *
                         'js/ / .js',
                                  ** *
                         'test/unit/ / .js'
                       ],                                                                            20
                       exclude: [],
                       port: 8080,
                       logLevel: config.LOG_INFO,                                                    21
                       autoWatch: true,
                       browsers: ['Safari'],
                       singleRun: false
                     });                                                                             22
                  };
                  这个配置文件类似于我们会生成出来的那样。                                                               23
                  设置了这个文件之后,就能像下面这样运行单元测试了:

                  $ karma run test/karma.conf.js                                                     24

                  另外,如果想在每次代码有变化时运行单元测试(如果把autoWatch设置成了true),可以
              像下面这样:                                                                                 25

                  $ karma start test/karma.conf.js
                                                                                                     26
                  2. 建立端到端测试

                  要设置端到端测试,要使用端到端测试Karma配置文件的路径来运行Karma生成器。
                                                                                                     27
                  $ karma init test/karma-e2e.conf.js
                  端到端测试要使用ng-scenario框架。不像单元测试那样,我们不需要引用所有的库代码:                                      28
              端到端测试是跑在服务器上的,ng-scenario框架只需要在浏览器中加载所有这些测试就可以了。
                  端到端测试的示例Karma配置文件可能长这样:                                                            29

                  module.exports = function(config) {
                    config.set({                                                                     30
                      basePath: '..',
                      frameworks: ['ng-scenario'],
                      files: [
                                ** *
                        'test/e2e/ / .js'                                                            31
                      ],
                      exclude: [],
                      port: 8080,                                                                    32
                      logLevel: config.LOG_INFO,
                      autoWatch: false,
                      browsers: ['Chrome'],
                      singleRun: false,                                                              33
                      urlRoot: '/_karma_/',
                      proxies: {
                        '/': 'http://localhost:9000/'                                                34
                       }
                    });
                  };
                                                                                                     35
                  设置好这个配置后,就可以这样运行端到端测试:

                  $ karma run test/karma-e2e.conf.js                                                 36
   240   241   242   243   244   245   246   247   248   249   250