是否可以在 _failed() 挂钩中获取失败测试的文件名?

Is it possible to get the filename of the failed test in the _failed() hook?

如果我能够获得失败测试的文件名,我可以运行 第二次测试以检查它是否真的是一个错误或只是巧合。直到现在我都找不到解决方案。

你在 _failed 钩子中得到了测试的实例,所以你可以做同样的事情 RunFailed extension:

use Codeception\Test\Descriptor;

public function _failed(\Codeception\TestInterface $test, $fail)
{
    $fullName = Descriptor::getTestFullName($test);
}

原回答:

Codeception 具有 RunFailed extension,默认启用。

它将所有失败的测试名称保存到tests/_output/failed文件中,失败的测试可以通过运行宁codecept run -g failed命令执行。

如果失败的测试在第二个 运行 上通过,为了使 CI 通过,您可以使用此命令: codecept run || codecept run -g failed