angularJs测试环境搭建(一)

来源:互联网 发布:华为手机免费网络硬盘 编辑:程序博客网 时间:2024/05/18 12:31

一、下载noteJs(下载最新版本的noteJs)

   下载地址:http://www.notejs.org/


二、安装Karma CLI (node Package Manager)用户可以简便的运行karma

  输入命令:npm install -g karma-cli


三、安装jasmine 测试框架 karma-jasmine  和 谷歌插件(karma-chrome-launcher)。

  npm install karma-jasmine karma-chrome-launcher


四:配置文件解析


module.exports = function(config){config.set({  //放置文件的根目录basePath: '',//使用哪些测试框架frameworks: ['jasmine'],//浏览器需要加载的文件列表或者文件匹配表达式files:[ 'angular.min.js','angular-mocks.js','controller.js','test.js',//测试文件js文件],//需要排除的文件列表或者文件匹配正则表达式exclude: [],//web服务器商品port: 8080,//日志等级//合法值为:LOG_DISABLE || LOG_ERROR || LOG_WARN || LOG_INFO || LOG_DEBUGlogLevel: config.LOG_INFO,//进行测试时是否允许随时监视文件变化autoWatch: ture,//启动以下浏览器, 目前可以兼容// Chrome// ChromeCanary// Firefox// Opera// IEbrowsers :['Chrome'],//持续集成模式//如果设置为true 则会启动浏览器, 运行测试然后退出singleRun: false});};

也可以使用: karma init 生成配置文件(按照默认的配置点击下一步即可)


五:jasmine 定义测试


descript('My Message', function(){var t;//在每一个it执行之前被调用beforeEach(function(){t = true;});//在每一个it块执行完毕后会执行afterEach(function(){t = null;});//单元测试的核心代码it('这个t变量不等于true', function(){expect(t).toBeTruthy();});it('这个变量不等于 b 这个变量', function(){var b = false;expect(t).toEqual(b);//如果测试失败会弹出 it 中定义的消息});});

六、常用的jasmine匹配函数

1. toEqual 接受第二个参数并将两者进行深入比较(除了可以比较基本的变量,还可以比较 json)

2. toBe 函数检查参数的引用,两个参数必须指向一个对象。

3. toBeTruthy 检查参数是否为JavaScript 语法中的true (包括非空对象、非空字符串、非0数字或者布尔值true)。

4 toBeFalsy 检查是否为Javascript 语法中的false(包括空对象、未定义的变量、空字符串、数字0或者布尔值false)。

5 toBeDefined 检查函数接受的参数是否已经被定义过,也就是说变量是否已经被赋予某个引用。

6 toBeUndefined 检查参数是否为undefiend 或者根本没有被传入

7 toBeNull 检查参数是否为Null

8 toContain 检查expect 函数中的数组参数是否包含了toContain 函数中的参数

9 toMatch 检查expect 中的函数是否匹配toMatch中的正则表达式


七、在程序测试目录加载karma ,在该目录运行  npm install karma


八、 该代码目录,运行测试:

karma start


九、 使用karma run 可以让当前的服务器配置进行相同的测试


错误集锦

错误集锦 Cannot find module 'jasmine-core'下载插件:npm install jasmine-core --save-dev    




0 0
原创粉丝点击