【发布时间】:2012-11-21 06:44:57
【问题描述】:
我目前正在为 Symfony2 开发比特币支付包。您可以在my github 上查看。它还没有(我希望)完全由测试驱动开发,但我尽量让它尽可能地被测试覆盖。
Bundle 包含实现CommandInterface 接口的AbstractCommand 类。因为它是一个抽象类,所以不需要实现接口的每一个方法。太好了。
接下来,我有AbstractCommandTest 测试用例。它测试validateParameters 方法是否有效。测试涵盖课程的每一行。但是......当我在我的 IDE(带有 PHP 插件的 IntelliJ Idea)上运行测试覆盖率分析时,它表明覆盖率是 93%。这很奇怪,因为没有线用红色标记(我已经更改了默认配色方案,所以我看得很清楚;))。
问题是:为什么? 是 PHPUnit 错误吗?或者可能是类模型构建问题?当我在 AbstractCommand 中有抽象方法(并且没有接口)时,它们也没有被覆盖。
【问题讨论】:
标签: php interface phpunit abstract-class code-coverage