PHPUnit成功回调函数?
PHPUnit Success callback function?
在 PHP 单元的文档中潜伏时,我发现了测试失败时应该调用的函数,即 onNotSuccessfulTest
.
但是有没有我可以用来表明测试成功的函数或方法?
例如我有 3 个测试,TestOne
、TestTwo
、TestThree
。虽然我可以确定其中一项测试是否成功,但我是否可以检查所有测试是否都成功结束并据此采取行动?
虽然我看不到任何直接的解决方案,但这里有一个不那么丑陋的替代方案可供尝试。
编写一个 'fake' 依赖于 testOne、testTwo 和 testThree 的测试:
class DummyTest extends \PHPUnit_Framework_TestCase
{
public function testOne()
{
self::assertTrue(true);
}
public function testTwo()
{
self::assertTrue(false);
}
public function testThree()
{
self::assertTrue(true);
}
/**
* @depends testOne
* @depends testTwo
* @depends testThree
*/
public function testOnAllTestsSuccess()
{
echo 'All tests have succeeded';
}
}
testOnAllTestsSuccess
将是 运行 仅当它所依赖的所有那些都通过时,否则将被跳过。
要运行一个函数在测试成功后可以使用以下解决方法:
// Teardown is a function that gets run after each test
public function tearDown()
{
// Status 0 is returned on a successfull test
if ($this->getStatus() == 0) {
// stuff to do on sucsess
}
}
在 PHP 单元的文档中潜伏时,我发现了测试失败时应该调用的函数,即 onNotSuccessfulTest
.
但是有没有我可以用来表明测试成功的函数或方法?
例如我有 3 个测试,TestOne
、TestTwo
、TestThree
。虽然我可以确定其中一项测试是否成功,但我是否可以检查所有测试是否都成功结束并据此采取行动?
虽然我看不到任何直接的解决方案,但这里有一个不那么丑陋的替代方案可供尝试。
编写一个 'fake' 依赖于 testOne、testTwo 和 testThree 的测试:
class DummyTest extends \PHPUnit_Framework_TestCase
{
public function testOne()
{
self::assertTrue(true);
}
public function testTwo()
{
self::assertTrue(false);
}
public function testThree()
{
self::assertTrue(true);
}
/**
* @depends testOne
* @depends testTwo
* @depends testThree
*/
public function testOnAllTestsSuccess()
{
echo 'All tests have succeeded';
}
}
testOnAllTestsSuccess
将是 运行 仅当它所依赖的所有那些都通过时,否则将被跳过。
要运行一个函数在测试成功后可以使用以下解决方法:
// Teardown is a function that gets run after each test
public function tearDown()
{
// Status 0 is returned on a successfull test
if ($this->getStatus() == 0) {
// stuff to do on sucsess
}
}