我想跟踪一些值,比如时间和 gasused .我可以使用 console.log()
返回它,收集它,不是问题。但是想要一种比 console.log()
更强大、更好的方法来报告它。
一个简单的例子:
it("I can reserve up to 10.000", async() => {
let instance = await FullCoupon.new(10000);
// in reality this is a helper function to collect and output the values.
var tx = await web3.eth.getTransactionReceipt(instance.transactionHash);
console.log(tx.gasUsed);
//...
});
上面的例子将打印行内和未填充的数字(屏幕截图中的 53855):
我正在寻找的是,最好是在测试运行期间收集消息并将它们打印在测试输出下方。例如,我的测试套件打印 > No events were emitted
的地方。
或者,或者,将文本添加到正在打印的测试行,类似于慢测试计时标志,例如 (185ms)
。
Mocha 是否提供 API 来设置要打印到其报告中的消息?
最佳答案
肯定有办法做到这一点。您可以使用其他支持此类功能的记者。您可以尝试使用 mochaawesome它具有向单个测试结果添加详细信息的功能。
要将一些测试添加到您的测试报告中,您可以使用如下代码:
const addContext = require('mochawesome/addContext');
从里面 block :
addContext(<value you want to print>);
要使用此报告程序,请在触发您的测试套件时使用 --reporter mochawesome
。
这将打印测试报告中的文本。还有其他记者也支持这种功能。希望这能解决问题。
关于javascript - 如何向 Mocha 输出报告添加文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51842223/