Koa、Express Web单元测试
标签(空格分隔): koa express test jasmine supertest
通过Koa、express等框架编写的web网站,如何进行单元测试,验证url规则的正确性、router是否能正确处理网络请求等等。简而言之,通过NodeJS搭建了一个web网站,如何验证网站的正确性。
下面我将介绍本文涉及到的两款工具: jasmine和supertest。
jasmine
jasmine是一个款测试工具,类似于mocha,通过它可以定义一些BDD/TDD的单元测试用例。下面我们一个简单的例子来讲述如何使用jasmine。
* Step1, 肯定是安装啦, 通过npm即可安装:
npm install jasmine -g
- Step2, 切换到你的项目目录,使用内置命令,初始化测试用例:
jasmine init
执行完成之后你将得到类似于下面的文件内容:
|–YouProject
|——…. (其他项目文件)
|——spec
|——|—-support
|——|—-|—-jasmine.json (jasmine配置文件)
打开jasmine.json可以看到jasmine的配置,
{
"spec_dir": "spec",
"spec_files": [
"**/*[sS]pec.js"
],
"helpers": [
"helpers/**/*.js"
],
"stopSpecOnExpectationFailure": false,
"random": false
}
由上我们看到, 测试用例的文件只需要按照**/*[sS]pec.js
的命名方式即可,如test/FirstSpec.js。
* Step3, 创建测试用例:
File: spec/test/FirstSpec.js
describe("My First Spec", function(){
// 测试用例
it("Array.