0

1)我将 selenium 与 phpunit 一起使用,我尝试使用 phpunit 的代码覆盖率,但我有一个疑问。此代码覆盖率是否仅用于单元测试(或)功能测试 2)如果我在 phpunit 中使用 selenium 的代码覆盖率但它没有覆盖代码,那么结果是 0% 被覆盖,请给我任何澄清。示例代码:

<?xml version="1.0" encoding="UTF-8"?>
<coverage generated="1381493785">
  <project timestamp="1381493785">
    <metrics files="0" loc="0" ncloc="0" classes="0" methods="0" coveredmethods="0" conditionals="0" coveredconditionals="0" statements="0" coveredstatements="0" elements="0" coveredelements="0"/>
  </project>
</coverage>
4

1 回答 1

0

只应在执行单元测试时生成代码覆盖率。而且我相信PHPUnit只有在直接执行要覆盖的代码时才能创建代码覆盖。使用 Selenium 时,代码只是间接执行(可能在不同的机器上),不能被覆盖。

那么为什么只用于单元测试呢?这是因为代码覆盖率应该可以帮助您发现未通过单元测试测试的行。

为什么不在功能测试中?因为这些是为了证明所有部分的总和可以协同工作,而不是遍历每个可能的输入组合以获得完整覆盖。这甚至可能是不可能的,因为会触发模型内部错误条件的输入甚至无法达到,因为表单验证已经停止执行。

于 2013-10-17T19:58:24.767 回答