6

对 Javascript 编码有点陌生,所以请多多包涵。

我通过jscoverage 自动化测试阅读了以下链接 jasmine

但是,由于我没有 Ruby 项目,所以它似乎不是我想要的。

以下是我执行的步骤:

  1. 将我要测试的 js 文件复制到目录“输入”
  2. 运行以下命令“jscoverage 输入输出”
  3. 将 Jasmine 的 spec 和 src 文件夹以及 SpecRunner.html 复制到“输出”中
  4. 将检测的源文件复制到 src
  5. 在 Chrome 中打开 jscoverage.html
  6. 在“浏览器”选项卡中打开 SpecRunner.html

此时,浏览器页面显示我的 Jasmine 测试。但是,“摘要”页面显示 0 个已测试文件,并且“源”选项卡显示为灰色。

我知道我在某个地方搞砸了,但不确定在哪里。请帮帮我。谢谢!

4

2 回答 2

5

正确的步骤如下:

  • 将 jasmine 文件(Jasmine 的 spec 和 src 文件夹以及 SpecRunner.html)复制到目录“输入”
  • 运行以下命令“jscoverage 输入输出”
  • 在 Firefox 中打开 jscoverage.html(Chrome 不会显示已测试的单个文件)
  • 在“浏览器”选项卡中打开 SpecRunner.html

这种方法的缺点是所有文件包括茉莉花相关的js都会显示出来。但是您可以选择正在测试的 js 文件,然后查看它的代码覆盖率。

于 2012-03-06T04:48:34.223 回答
3

标准的 jscoverage 方法是检测您想要覆盖的整个代码库,然后运行套件测试并生成报告。这种方法有点笨拙,因为代码库只需要设定频率的覆盖率报告。与 CI 测试不同,开发人员真正需要多久了解一次覆盖百分比变化,每周一次?

node.js jscoverage 项目使用与较大的 jscoverage 项目相同的“仪器”方法,但它可以从单个文件的节点 CLI 运行,或者从一个或多个文件的代码运行,因为它们是从测试本身调用的. 代替单独的步骤来“仪器”一批文件,jscoverage(令人困惑的名称),“仪器”在测试运行时。

我一直在努力开发一种模式,该模式允许在浏览器或 CLI 中使用相同的源代码设置和测试配置进行 jasmine 测试和测试。还是测试版。茉莉即时“仪器”尚未完成。

https://github.com/d1b1/jasmine-jscoverage

于 2013-01-24T03:28:52.087 回答