我正在尝试使用 python 中的机器人 api 从 output.xml 获取失败的测试用例名称,我能够使用以下代码获取失败/通过测试的计数,但找不到任何获取测试用例名称的方法。提前致谢。
from robot.api import ExecutionResult result = ExecutionResult('output.xml') result.configure(stat_config={'suite_stat_level': 2, 'tag_stat_combine': 'tagANDanother'}) stats = result.statistics print stats.total.critical.failed print stats.total.critical.passed print stats.tags.combined[0].total
要获取失败的测试用例名称,你可以使用 Robot Framework API 提供的一些方法和属性。
在 ExecutionResult 对象中,你可以使用 suite 属性来访问测试套件的相关信息。每个测试套件都包含一个或多个测试案例。
ExecutionResult
suite
你可以迭代每个测试套件,并检查每个测试案例的状态(通过或失败)。对于失败的测试案例,你可以获取其名称。
以下是一个示例代码,展示了如何获取失败的测试用例名称:
from robot.api import ExecutionResult result = ExecutionResult('output.xml') result.configure(stat_config={'suite_stat_level': 2, 'tag_stat_combine': 'tagANDanother'}) failed_test_cases = [] for suite in result.suite.suites: for test in suite.tests: if test.status == 'FAIL': failed_test_cases.append(test.name) print(failed_test_cases)
在上面的示例中,我们创建了一个空列表 failed_test_cases,然后迭代每个测试套件中的测试案例。如果测试案例的状态是 ‘FAIL’,则将其名称添加到列表中。
failed_test_cases
运行这段代码后,failed_test_cases 列表将包含所有失败的测试用例的名称。
请注意,这只是一个简单的示例,假设你的测试结果 output.xml 遵循标准的 Robot Framework 输出格式。你可能需要根据你的测试结果的实际结构进行调整和修改。
output.xml