您可以从脚本运行 PHPUnit 测试吗?

2022-01-25 00:00:00 php phpunit

我有一个 PHP 部署脚本,我想先运行 PHPUnit 测试,如果测试失败则停止.我在谷歌上搜索了很多,很难找到关于从 php 运行单元测试的文档,而不是从命令行工具.

I have a PHP deployment script that I want to run PHPUnit tests first, and stop if the tests fail. I've been googling this a lot, and it's very hard to find documentation on running unit tests from php, rather than from the command line tool.

对于最新版本的 PHPUnit,你可以这样做:

For the newest version of PHPUnit, can you do something like:

$unit_tests = new PHPUnit('my_tests_dir');
$passed = $unit_tests->run();

最好是不需要我手动指定每个测试套件的解决方案.

Preferably a solution that doesn't require me to manually specify each test suite.

推荐答案

想通了:

$phpunit = new PHPUnit_TextUI_TestRunner;

try {
    $test_results = $phpunit->dorun($phpunit->getTest(__DIR__, '', 'Test.php'));
} catch (PHPUnit_Framework_Exception $e) {
    print $e->getMessage() . "
";
    die ("Unit tests failed.");
}

相关文章