# 项目集成
通过对 Mocha 生成的数据进行简单处理之后,可以调用 macaca-reporter/lib/render 方法生成报告器。
# 生成数据
通过在 Mocha 完成每个测试用例后,对数据进行处理,最终将数据输出在本地。
核心代码:
const handleTestEnd = (isEnd) => {
const obj = getSuiteData(isEnd);
obj.stats.duration = obj.suites._totalTime || 0;
this.output = obj;
};
this.done = (failures, exit) => done(this.output, this.config, failures, exit);
runner.on('start', () => {
this._originSuiteData = runner.suite;
});
runner.on('test end', test => {
test.uuid = uuid();
handleTestEnd();
});
runner.once('end', () => {
handleTestEnd(true);
self.epilogue.bind(self);
});
具体代码可以参考 uitest (opens new window): 开始 (opens new window) - 结束 (opens new window)
# 生成报告器
生成数据后,通过 render 方法渲染出报告器页面:
const render = require('macaca-reporter/lib/render');
const data = require('./reports/json-final');
render(data);
# Jest 集成
使用 macaca-reporter-jest (opens new window) 可以完成 jest 工具的集成使用。
# Java 工程集成
使用 macaca-reporter-java-plugin 可以完成 Java 工程的集成使用。