4

我一直在寻找解决方案,但找不到任何解决方案。

我在我的 PHP 应用程序上做了一些代码覆盖,它工作正常,除了几个 PHPUnit 似乎认为是空的文件(我的意思是,因为没有代码行),即使它们不是空的(每个文件都包含数百行)。

我可以看到类及其方法,但每个函数都被认为有 0 行(它说 0/0 100% 覆盖率)。如果我尝试单击函数或类名称,我通常会看到代码,但看不到这些有问题的类。

我想发布一张图片,但由于我是新用户,很遗憾我不能。

有人遇到同样的问题吗?

编辑:这是一个有问题的示例类:

1 http://img43.imageshack.us/img43/9127/screenshot1aig.png

找到解决方案后编辑 (2):我删除了源代码,因为它不是问题所在。

4

1 回答 1

0

我找到了解决方法。我按照 cweiske 的建议做了(我应该早点做)并缩小,直到 phpunit 代码覆盖率起作用。但令人惊讶的是,即使我只留下了一种方法,它也从未奏效。

我创建了另一个文件“Foo.php”,包含与 PlayersManager 相同的内容(几乎是空的,只有一个函数)。

一个 Foo.php 被完美地覆盖了!我将 PlayersManager 中的整个文件复制到 Foo.php 中,运行代码覆盖率,它运行良好。

为了证明我没有发疯,我重新复制了 PlayersManager 中的代码并重试:PlayersManager 覆盖率仍然是 100%,代码行为 0。

我删除了 PlayersManager.php 并重命名了 Foo.php PlayersManager.php,重新进行了覆盖,它可以工作了!

phpunit 是否保留一些缓存或类似的东西!?

无论如何,解决方法将在未来解决其他有问题的文件,但只是想知道!

感谢帮助 !

于 2012-06-21T03:30:18.457 回答