phpunit的代码覆盖率

时间:2013-10-16 10:50:04

标签: selenium phpunit code-coverage

1)我用phpunit使用了selenium,我试过使用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>

1 个答案:

答案 0 :(得分:0)

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

那么为什么只进行单元测试呢?这是因为代码覆盖率可以帮助您找到未经单元测试测试的行。

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