Page 246 - AngularJS权威教程
P. 246
226 第 19 章 测试
另外,如果想要在每次代码有变化时运行我们的测试(如果把autoWatch设置成了true),
可以像下面这样:
$ karma start test/karma-e2e.conf.js
19.7 配置选项
基于Karma,可以在多种配置选项之间选择,定制自己喜欢的测试方式。
1. 框架
生成器会问我们使用哪个测试框架来做测试。Jasmine是默认的测试框架,不过,生成器默
认也支持Mocha、QUnit和其他测试框架。
这些测试框架都需要安装额外的npm库。例如,要使用Jasmine框架,需要安装Jasmine插件。
$ npm install --save-dev karma-jasmine
使用--save-dev标志会把依赖关系写到package.json文件中,放在devDependencies
下面。
在配置文件里,这个标志使用了一个数组,可以让我们使用多个框架。一般我们只用一个,
所以通常这个选项会被设置成['jasmine']或者['mocha']。
比如:
frameworks: ['jasmine'],
2. RequireJS
①
如果这个项目使用了RequireJS 库,询问是否要包含RequireJS的,就要回答yes。如果项目没
有包含它,不是把项目中所有文件都列在Karma配置文件中(马上就会看到),而是要包含单独
的测试文件,它负责加载特定模块。
RequireJS是专门为浏览器设计的JavaScript文件和模块加载器。利用它我们能编写JavaScript
库,这些库能够导出一个库并使用模块名来配置依赖的预期,它将在我们模块加载的时候可用。
它的主要好处是:
建立了一个导入过程;
能加载嵌套的依赖项;
让打包依赖项变得容易。
实际上,RequireJS允许我们通过模块来定义JavaScript,以及在JavaScript中请求这些模块。
例如:
define(['jquery', 'underscopre'],
function($, _) {
// $ 引用jQuery
——————————
① http://requirejs.org