零散的筆記。javascript
Jasmine是一個用於測試JavaScript代碼的行爲驅動開發框架。java
Jasmine套件的核心部分是describe函數。正則表達式
describe('Unit test: MainController', function() { });
describe()函數帶有兩個參數,一個字符串(細則套件名稱、描述),一個函數(封裝了測試套件)
可嵌套。數組
經過調用it()函數來定義一個細則.
it()函數帶有兩個參數:一個字符串(是細則的標題或者描述),一個函數,包含了一個或多
個用於測試代碼功能的預期(expect())。
一個全部預期都爲true的測試就算是一條
經過的細則.框架
describe('A spec suite', function() { it('contains a passing spec', function() { expect(true).toBe(true); }); });
使用expect()函數來創建預期。
expect()函數帶有一個單值參數。這個參數被稱爲真實值。
要創建一個預期,咱們給它串聯一個帶單值參數的匹配器函數(like toBe()),這個參數就是指望值。
能夠經過在調用匹配器以前
調一個not來建立測試的否認式。函數
describe('A spec suite', function() { it('contains a passing spec', function() { expect(true).toBe(true); }); it('contains another passing spec', function() { expect(false).not.toBe(true); }); });
describe('A spec suite', function() { this.addMatchers({ toBeLessThanOrEqual: function(expected) { return this.actual <= expected; } }); });
具體參考:http://blog.csdn.net/u012223913/article/details/50337401
expect(x).toEqual(y);
當x和y相等時候經過測試
expect(x).toBe(y);
當x和y是同一個對象時候經過ui
expect(x).toMatch(pattern);
x匹配pattern(字符串或正則表達式)時經過this
expect(x).toBeDefined();
x不是undefined時經過lua
expect(x).toBeUndefined();
x
是 undefined時經過
expect(x).toBeNull();
x是null時經過
expect(x).toBeTruthy();
x和true等價時候經過
expect(x).toBeFalsy();
x和false等價時候經過
expect(x).toContain(y);
x(數組或字符串)包含y時經過
expect(x).toBeLessThan(y);
x小於y時經過
expect(x).toBeGreaterThan(y);
x大於y時經過
expect(function(){fn();}).toThrow(e);
函數fn拋出異常時候經過