Bootstrap

Koa、Express Web单元测试

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.
;