使用istanbul进行量角器测试是否可以获得服务器端代码覆盖,grunt-protractor-coverage插件提供客户端覆盖,我假设__ coverage __对象来自客户端JS文件。 如果是这样,如何获得节点js服务器端覆盖?
答案 0 :(得分:0)
https://github.com/gotwarlost/istanbul/issues/574
这对于获取服务器端代码的代码覆盖非常有用。基本上:
./node_modules/.bin/istanbul cover --handle-sigint server.js
使用istanbul运行服务器。 --handle-signint
表示一旦终止,它就会生成报告。
在另一个终端窗口中,运行到达服务器的测试(无需对其进行检测)。
在运行server.js
的终端中退出该流程(例如,使用control-C)。
在主应用程序文件夹中名为coverage
的文件夹中生成报告。
因此,每次在服务器端代码中触及一行代码时,都会记录下来。跟踪您的测试实际覆盖的内容非常重要。单元测试将涵盖很多,但端到端测试很可能会错过很多代码分支。
(如果你有JS和咖啡文件的混合,如果有人知道如何做到这一点,任何帮助将不胜感激!_