在多人同时改动代码时, 帮助我们知道是否别的接口或者函数是不是出问题了;
1. Karma
https://karma-runner.github.io/2.0/index.html
Karma
为前端自动化测试提供了跨浏览器测试的能力;
2. Mocha
Mocha
是前端自动化测试框架;
支持生命周期;不同断言库:chai, nodejs的assert, should.js;同步异步;测试分组;等其他框架具备的能力;
基本语法:
describe('测试1',function(){ describe('测试1-1',function(){ it('某个变量的值应该是数字',function(){ //断言 }) }); describe('测试1-2',function(){ it('某个数组长度应该不小于10',function(){ //断言 }) }); })
生命周期:
describe('hooks', function() { before(function() { // runs before all tests in this block }); after(function() { // runs after all tests in this block }); beforeEach(function() { // runs before each test in this block }); afterEach(function() { // runs after each test in this block }); // test cases });
3. Chai
Chai
是一个断言库合集;
支持语法如下:
expect(bar).to.not.exist;//断言bar不存在 expect(data).to.have.ownProperty('length');//断言data有length属性 expect(name).to.be.a('string');//断言name是一个字符串 assert.equal(value1,value2);//断言value1和value2相等 Tony.should.be.an.instanceof(Person);//断言Tony是Person类的实例