我在集成服务器上使用 phpUnit 来运行所有测试,如果我从命令行启动 phpunit 命令,我会收到:
PHPUnit 3.2.18 by Sebastian Bergmann.
F..III..I......I.IIII...
Time: 6 seconds
There was 1 failure:
1) Warning(PHPUnit_Framework_Warning)
No tests found in class "TU".
FAILURES
Tests: 24, Failures: 1, Incomplete: 9.
通过apache,运行相同的测试文件:
PHPUnit 3.2.18 by Sebastian Bergmann.
..III..I......I.IIII...
Time: 7 seconds
OK, but incomplete or skipped tests!
Tests: 23, Incomplete: 9.
我的 TU 类仅包含带有 $suite->addTestFile()
的所有测试类,
它有两个静态函数: main()
运行所有测试,
和 suite()
返回测试套件。
但 TU 类不在作为参数给出的主文件中
phpunit 命令,它是一个通用类,用于扫描文件并列出所有测试
类。
我对扩展 PHPUnit_Framework_TestCase 以添加特定的assert()
的类也有同样的问题,该类不是通过$suite->addTestFile()
包含的,而是通过require()
。
我该如何纠正这个问题?
最佳答案
对于扩展 PHPUnit_Framework_TestCase 的类,它应该是抽象的,并且警告消失。 对于第一个问题,似乎是一个错误。
关于phpunit 对实用类发出警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/391390/