我使用 Simpletest 测试套件以不同的配置方法运行所有测试。我为每个配置方法创建了一个套件,它设置了环境,然后运行所有测试。
如果不清楚,请查看Adapter.php和Constants.php 。
现在似乎支持 PHPUnit 中的测试套件,但据我了解,它仅用于对测试进行分组,不支持设置环境或运行 PHP 脚本。
如何将我的测试套件转换为 PHPUnit?我愿意重新考虑测试的结构:)
我使用 Simpletest 测试套件以不同的配置方法运行所有测试。我为每个配置方法创建了一个套件,它设置了环境,然后运行所有测试。
如果不清楚,请查看Adapter.php和Constants.php 。
现在似乎支持 PHPUnit 中的测试套件,但据我了解,它仅用于对测试进行分组,不支持设置环境或运行 PHP 脚本。
如何将我的测试套件转换为 PHPUnit?我愿意重新考虑测试的结构:)
除了重构您的测试套件之外,您还应该知道assertions
PHPUnit 中的行为与 SimpleTest 不同。
在 SimpleTest 中,您可以测试断言结果并在断言失败后执行进一步的代码,但您不能在 PHPUnit 中:使用 PHPUnit测试触发错误的方法的返回值
这也可能会强制重构一些实际测试。
您可以在每次测试之前或在每个测试套件之前使用测试装置来设置您的环境:
http://www.phpunit.de/manual/3.6/en/fixtures.html#fixtures.more-setup-than-teardown
您正在寻找的方法是
setUp()
和tearDown()
(在每次测试之前/之后调用),和setUpBeforeClass()
和tearDownAfterClass()
(在每个测试类(套件)之前/之后调用)。