我有一个python侦听器,如果发现某个错误,我想立即停止执行测试,而是结束套件。目前,我正在使用sys.exit()进行此操作,但这导致没有日志文件生成损坏的xml输出,这是不理想的。我仍然希望运行套件结尾的进程,我只想跳过运行所有后续测试。

我知道当ctrl-C运行中的测试套件时,每个后续测试都将停止,并显示“由于致命错误而停止了测试执行”。捕获异常时,如何在侦听器中安全地触发此事件?

我怎样才能做到这一点?

最佳答案

与BuiltIn库中的Fatal Error一起使用-它将精确地执行此操作,并在调用之后使所有连续的测试失败。

from robot.libraries.BuiltIn import BuiltIn
BuiltIn().fatal_error('your message here')

07-24 22:22