如何在机器人框架的Suite Setup中获取当前的Testcase名称?

时间:2020-06-03 18:45:39

标签: robotframework

我有.robot文件,其中包含Suite设置和一些测试用例,例如Test1,Test2和Test3。我想运行Test2。但是作为要求的一部分,我需要在套件设置中打印正在执行的当前测试用例名称(即Test2)。由于套件设置是在测试用例之前执行的,因此无法使用$ {TEST_NAME}。还有其他方法可以检索当前的测试用例名称吗? 。请帮助我!

1 个答案:

答案 0 :(得分:1)

我认为您最好的选择是使用visitor interface

您将创建一个新类,其中将遍历所有测试:

Libraries / Visitor.py

from robot.model.visitor import SuiteVisitor
from robot.api import logger

class Visitor(SuiteVisitor):
    def start_suite(self, suite):
        for test in suite.tests:
            logger.console("{}".format(x))

然后,您将使用--prerunmodifier选项运行测试,并在其中指定新类,例如:--prerunmodifier Libraries/Visitor.py

它将首先列出您的测试用例,然后开始执行它们。