功能测试覆盖报告,包括node-jscoverage, mocha和express
Functional test coverage report with node-jscoverage , mocha and express
我想要获得express端点上功能测试的覆盖率。我做了这个简单的设置。
nodetest/index.js
module.exports = process.env.APP_COV
? require('./lib-cov')
: require('./lib');
nodetest/lib/index.js
var express = require('express');
var app = express();
app.get('/hello.txt', function(req, res){
res.send('Hello World');
});
var server = app.listen(3000, function() {
console.log('Listening on port %d', server.address().port);
});
nodetest/测试/simple.js
var request = require('supertest');
describe("Node Test Service",function(){
it('Should return 200 OK trying to login', function (done) {
request("http://localhost:3000")
.get('/hello.txt')
.expect(200)
.end(function (err, res) {
if(err)
throw err;
done();
});
});
});
nodetest/Makefile
all: test test-cov
test:
@./node_modules/.bin/mocha -R xunit > reporter.xml
test-cov: lib-cov
@APP_COV=1 ./node_modules/.bin/mocha -R html-cov > coverage.html
lib-cov:
@./node-jscoverage/jscoverage lib lib-cov
node-jscoverage:
@git clone git://github.com/visionmedia/node-jscoverage.git
@cd node-jscoverage/ && ./configure && make
.PHONY: test
我在打开env变量的情况下运行服务器,然后启动测试它产生一个空的cover。html。有可能得到我所要求的保险吗?
我发现为了工作,我必须从测试中立即启动express服务器。我还需要在test
上方添加一行var lib = process.env['COV']?'../lib-cov' : '../lib';
//run express
var app = require(lib)
,这样当您运行覆盖率测试时,您就包含了被检测的文件。
相关文章:
- 使用Express捕获参数
- 从模块内部访问Express装载路径
- 在Nodejs中Express输入DEBUG=app时权限被拒绝/bin
- 如何使用Node/Express显示有关特定错误的自定义html页面
- 发送json对象或使用express路由呈现视图
- renderReact/Rect Router+Node/Express.js的服务器端/同构渲染中未定义renderP
- Mocha react本地路由器编译错误
- 为什么不't Express呈现我的React应用程序
- 如何在Mocha/Chai中测试JS原型(非模块)
- Express服务器中语言子域的最佳实践
- 为什么不是'我的函数在解析云代码中工作吗?当我在Angular和Express中测试时,它是有效的
- Nodejs和express路由,如何处理客户端的承诺
- node.js和express中的异常处理
- 什么'在Express中路由时,应用程序级中间件和路由器级中间件之间的区别是什么
- 如何在不重新加载的情况下提交表单,并使用Node+Express将数据传递回同一页面
- 测试Express.js res.render在承诺与Mocha&Sinon spy
- 使用 Express 和 Grunt 使用 Mocha 进行测试
- 使用超测运行Mocha测试时,Express路由永远不会执行
- 功能测试覆盖报告,包括node-jscoverage, mocha和express
- Mocha:测试express.Router实例的方法