对Javascript编码有点陌生,所以请耐心等待。
我阅读了以下链接jasmine与jscoverage自动测试
然而,由于我没有Ruby项目,它似乎不是我想要的。
以下是我执行的步骤:
- 将要测试的js文件复制到目录"input"
- 运行以下命令"jscoverage input-output"
- 将我的Jasmine和SpecRunner.html的spec和src文件夹复制到"output"中
- 将插入指令的源文件复制到src中
- 在Chrome中打开jscoverage.html
- 在"浏览器"选项卡中打开SpecRunner.html
此时,浏览器页面显示我的Jasmine测试。但是,"摘要"页面显示了0个已测试的文件,"源"选项卡显示为灰色。
我知道我在什么地方搞砸了,但不确定在哪里。请帮帮我。谢谢
要遵循的正确步骤如下:
- 将jasmine文件(jasmine的spec和src文件夹以及SpecRunner.html)复制到目录"input"
- 运行以下命令"jscoverage input-output"
- 在Firefox中打开jscoverage.html(Chrome不会显示测试的单个文件)
- 在"浏览器"选项卡中打开SpecRunner.html
这种方法的缺点是所有的文件都会显示出来,包括与jasmine相关的js。但是您可以选择正在测试的js文件,只需查看它的代码覆盖率
标准的jscoverage方法是对您想要获得覆盖率的整个代码库进行检测,然后运行一套测试并生成报告。这种方法有点过于苛刻,因为代码库只需要在设定频率上的覆盖报告。与CI测试不同,开发人员真正需要知道覆盖率百分比变化的频率是多少,每周一次?
node.js jscoverage项目使用与更大的jsoverage项目相同的"检测"方法,但它可以从单个文件上的node CLI运行,也可以从一个或多个文件上的代码运行,因为它们是从测试本身调用的。在测试运行时,代替"仪器"一批文件的单独步骤,jscoverage(混淆的名称),"仪器"。
我一直致力于开发一种模式,该模式允许在浏览器或CLI中使用相同的源代码设置和测试配置进行jasmine测试和测试。仍然是测试版。茉莉花的及时"仪器"还没有完成。
https://github.com/d1b1/jasmine-jscoverage