如何在伊斯坦布尔覆盖的每个钩子之后提取全局变量__coverage__值?

时间:2016-03-16 06:34:03

标签: javascript protractor mocha istanbul

我的单元测试用例文件test.js

中有这段代码
browser.driver.executeScript('if (typeof __coverage__ !== "undefined") {  return __coverage__; }').then(function(val) {
if(val){
  var now = new Date();
  var destFile = process.env.TEST_DIR + "/output/code-coverage/istanbul/" + "protractor-" + now.getTime().toString() + "-collected-coverage.json";
  console.log("Collecting code coverage and save it to " + destFile + ".");
  fs.writeFileSync(destFile , JSON.stringify(val));
} else {
  console.log("No code coverage found.");
} });
};
module.exports.writeCoverage = writeCoverage;

应该从全局变量__coverage__中提取js对象值并将其写入JSON文件。它适用于量角器测试用例,但是使用mocha单元测试,我遇到了这个错误:

mocha test.js

"每次"勾选"获取完整的模块列表":      ReferenceError:未定义浏览器       在Object.writeCoverage(/home/../src/writeCoverage.js:4:3)       在上下文。 (test.js:7:11)

我很感激帮助。 谢谢!

0 个答案:

没有答案