与Jasmine一起运行JSOverage



对Javascript编码有点陌生,所以请耐心等待。

我阅读了以下链接jasmine与jscoverage自动测试

然而,由于我没有Ruby项目,它似乎不是我想要的。

以下是我执行的步骤:

  1. 将要测试的js文件复制到目录"input"
  2. 运行以下命令"jscoverage input-output"
  3. 将我的Jasmine和SpecRunner.html的spec和src文件夹复制到"output"中
  4. 将插入指令的源文件复制到src中
  5. 在Chrome中打开jscoverage.html
  6. 在"浏览器"选项卡中打开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

最新更新