您的位置:首页 > 其它

Jasmine

2015-06-30 15:30 323 查看
describe(string,function)  //suite测试集,可包含多个Specs(it),每个Specs(it)可包含多个expect

describe("A suite", function() {
it("contains spec with an expectation", function() {
expect(true).toBe(true);
});
});


beforeAll,beforeEach,afterAll,afterEach  //beforeAll:每个suite(即describe)中所有spec(即it)运行之前运行, beforeEach:每个spec(即it)运行之前运行

(function(){
describe("Test 'this'", function() {
beforeEach(function() {
this.testCount = this.testCount || 0;
this.testCount++;
});

afterEach(function() {
//this.testCount = 0; //无论是否有这行,结果是一样的,因为this指定的变量只能在每个spec的beforeEach/it/afterEach过程中传递
});

it("Spec 1", function() {
expect(this.testCount).toBe(1);
});

it("Spec 2", function() {
expect(this.testCount).toBe(1);
});
});
})();


angular-mocks.js

inject

angular.module('myApplicationModule', [])
.value('mode', 'app')
.value('version', 'v1.0.1');

describe('MyApp', function() {

// You need to load modules that you want to test,
// it loads only the "ng" module by default.
beforeEach(module('myApplicationModule'));

// inject() is used to inject arguments of all given functions
it('should provide a version', inject(function(mode, version) {
expect(version).toEqual('v1.0.1');
expect(mode).toEqual('app');
}));

// The inject and module method can also be used inside of the it or beforeEach
it('should override a version and test the new version is injected', function() {
// module() takes functions or strings (module aliases)
module(function($provide) {
$provide.value('version', 'overridden'); // override version here
});

inject(function(version) {
expect(version).toEqual('overridden');
});
});
});


url:http://jasmine.github.io/2.0/introduction.html

  https://docs.angularjs.org/api/ngMock
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: