測試TDD和BDD的區別node
TDD是測試驅動開發,經過用測試用例來規範約束開發者,編寫出質量更高的代碼 npm
BDD是行爲驅動開發,描述行爲路徑,就像描述故事,產品和前線業務人員可參與到開發流程中,減輕測試和開發寫測試用例的成本。用通用的語言形式儘量避免溝通上的障礙,實現產品和開發者同時定義系統的需求。瀏覽器
karma mocha should 這些都是什麼鬼?框架
karma 是驅動測試的runner,能夠執行Javascript代碼在多個真實的瀏覽器中測試。並生成測試報告異步
安裝 Karma : $ npm install karma --save-dev測試
運行 Karma:$ karma startblog
這些是官方提示支持的瀏覽器:ip
karma可配合不一樣的測試框架,例如:Jasmine Mocha Qunit 開發
測試框架以mocha爲例:產品
Mocha 是基於node的JavaScript測試框架,可執行異步測試 (node.js 須要版本6.x 或以上)
安裝 Mocha : $ npm install --save-dev mocha
運行 Mocha : $npm test
Should 是一個斷言庫,它與better-assert、expect、 unexpected、 chai 等都屬於斷言庫,可是又各有特色。
綜上它們的關係則是,should應用在mocha中,運行在karma中。