端到端測試(一)

零散的筆記。javascript

6. Jasmine

Jasmine是一個用於測試JavaScript代碼的行爲驅動開發框架。java

6.1 細則套件(describe()

Jasmine套件的核心部分是describe函數。正則表達式

describe('Unit test: MainController', function() { });
  • 1
  • 2

describe()函數帶有兩個參數,一個字符串(細則套件名稱、描述),一個函數(封裝了測試套件) 
可嵌套。數組

6.2 定義一個細則(it()

經過調用it()函數來定義一個細則. 
it()函數帶有兩個參數:一個字符串(是細則的標題或者描述),一個函數,包含了一個或多 
個用於測試代碼功能的預期(expect())。 
一個全部預期都爲true的測試就算是一條 
經過的細則.框架

describe('A spec suite', function() { it('contains a passing spec', function() { expect(true).toBe(true); }); });

7. 預期(expect)

使用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); }); });

 

7.1 內置的匹配器

  1. toBe
  2. toEqual
  3. toMatch(正則匹配)
  4. toBeDefined
  5. toBeUndefined
  6. toBeNull
  7. toBeTruthy
  8. toBeFalsy
  9. toContain
  10. toBeLessThan
  11. toBeGreaterThan
  12. toBeCloseTo(指定精度內)
  13. toThrow(異常) 、
  14. 建立自定義匹配器 
    調用addMatcher()函數,帶入一個值:
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拋出異常時候經過

相關文章
相關標籤/搜索