var ConsoleReporter = jasmineRequire.ConsoleReporter();
var options = {
timer: new jasmine.Timer,
print: function () {
console.log.apply(console,arguments)
}};
consoleReporter = new ConsoleReporter(options); // initialize ConsoleReporter
jasmine.getEnv().addReporter(consoleReporter); //add reporter to execution environment
5条答案
按热度按时间xesrikrc1#
你试过ConsoleReporter吗?
根据代码,Jasmine有一个ConsoleReporter类,它执行一个打印函数(在本例中为console.log),该函数应该可以完成您需要的操作。
如果其他方法都失败了,你可以用它作为一个起点来实现你自己的console.log报告器。
更新在较新版本的jasmine中,ConsoleReporter被删除。您可以使用内置的jsApiReporter,也可以编写自己的(控制台)报告程序,如以下链接所示:https://jasmine.github.io/tutorials/custom_reporter
tvmytwxo2#
在最新的version of Jasmine (2.0)中,如果你想得到测试输出到控制台,你需要添加以下行。
输出到html是默认包含的,但是如果你根本不想要html输出,你必须编辑你的boot.js文件并删除其中的相关行。如果您想自定义输出在控制台中的显示方式,请编辑文件console.js。来源
mitkmikd3#
jasmineRequire.ConsoleReporter在2.3.0中不存在,所以我使用了以下代码:
6tr1vspr4#
为了完整起见,这里是完整的配置:
首先运行
npm install
命令:然后检查您的Jasmine配置,确保您在那里设置了helpers:
spec/support/jasmine.json
由于helper是在specs之前执行的,所以你唯一要做的就是创建一个console reporter helper。
spec/helpers/reporter/consoleReporter.js
whitzsjs5#
我创建了上述答案的摘要解决方案,在不同的茉莉花版本上进行了测试。将其添加到您的boot.js(例如boot1.js):