我正在使用frisby.js与Mocha一起实现自动化 Rest API 测试。所有测试都在一个单独的测试自动化项目中实现。REST API 实现在其他项目中实现。Rest API 基于 Swagger。因此,我能够访问/获取swagger.json
as API 定义。
下面是一个简单的实现示例:
const frisby = require('frisby');
const chai = require('chai');
const assert = chai.assert;
const config = require('config');
const { adminUser1 } = config.get('users');
const { adminUser2 } = config.get('users');
const restHelper = require('../restHelper');
describe('REST API endpoint \'/auth\' on environment: ' + process.env.BASE_URL + '/api/auth', () => {
// POST /auth
describe('POST /auth', () => {
// POST /auth - Status Code 200
describe('Status Code 200', () => {
it('create a new session for user ' + adminUser1.username, () => {
return frisby
.post(process.env.BASE_URL + '/api/auth', {
'username': adminUser1.username,
'password': adminUser1.password,
})
.expect('status', 200)
.then(function (result) {
assert.isNotNull(result.json.token);
});
});
});
});
});
现在我想获取有关此 Rest API 的测试覆盖率的信息。因此,我想大致了解一下已经测试过的内容以及目前未涵盖哪些 API 端点。
是否有任何工具、包等来生成和实施这样的测试覆盖率报告?