【问题标题】:How to run specific test cases from a test suite using Robot Framework如何使用 Robot Framework 从测试套件运行特定的测试用例
【发布时间】:2014-09-20 05:35:21
【问题描述】:

我是 Robot 的新手,正在学习编写逻辑和测试用例。

我有一个测试套件“mytestsuite.robot”,其中有很多测试用例。我的一个测试用例中有几个错误。

由于我不想再次运行整个测试套件,如何只运行那个特定的测试用例?

文件 mytestsuite.robot

testcase1
....
....
testcase2
....
....
testcase3
....
....
testcase4
....
....

假设测试用例 3 失败,我只想重新运行测试用例 3。

我尝试使用:

pybot mytestsuite.robot -t testcase3

但我得到一个错误。

【问题讨论】:

    标签: python robotframework


    【解决方案1】:

    您想使用选项-t--test,但选项在文件名之前放在文件名之前而不是之后。这应该有效:

    robot -t testcase1 mytestsuite.robot
    

    用户指南中标题为Starting test execution 的部分中介绍了命令行参数的顺序,并且还可以在带有--help 选项的命令行中使用(例如pybot --help

    请注意,特定文件名是可选的。您只能使用: 机器人 -t testcase1 .

    在哪里“。”表示查找包含指定测试的所有文件。机器人会努力寻找具体的测试。

    您还可以在测试名称的开头或结尾使用 willcard 作为 *,以轻松匹配测试或运行多个测试。

    机器人 -t "testcase1*" 。

    将匹配当前文件夹中所有以“testcase1”开头的测试。

    用户指南中有一个标题为Selecting test cases 的部分涵盖了这个主题。

    【讨论】:

      【解决方案2】:

      如果您想在 Robot Framework 中运行 single 测试用例,请使用以下示例。

      语法:robot -t "Test Case Name" Test Suite Name
      示例:robot - t "PON Type Test Case" Aquarium_Project.robot

      如果您想在 Robot Framework 中运行所有测试用例,请使用以下示例

      语法:robot Test Suite Name
      示例:robot Aquarium_Project.robot

      【讨论】:

        【解决方案3】:

        如果您使用具有设置和拆卸的__init__.robot 文件,如果您具有如下嵌套目录结构,则不能直接从测试文件调用测试:

        |-- foo
            |-- bar.robot
        

        并且bar.robot文件有一个名为baz的测试用例,在这种情况下,你可以这样做:

        robot --test 'foo.bar.baz' foo
        

        嵌套更深:

        |-- foo
            |-- bar
                |-- baz.robot
        
        robot --test 'foo.bar.baz.*' foo
        

        您可以使用*(星号)运行 foo.bar.baz 套件中的所有测试用例。

        【讨论】:

          【解决方案4】:

          迟到的帖子,但如果有人在将来寻找这个,你也可以使用Tags 的概念。使用 Robot Framework,您可以标记您的测试套件和测试用例。对于您的问题,我将限制自己使用基于测试的标签。休息时,您可以阅读 - https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#tagging-test-cases

          在您的情况下: 文件 mytestsuite.robot

          testcase1
          ...
          ...
          testcase2
          ...
          ...
          testcase3
          [Tags] | temp
          ...
          ...
          testcase4
          ...
          ...
          

          您可以向任何测试用例添加多个标签。使用--include(也用作-i)机器人选项来指定要运行的标签。在这种情况下:

          robot --include temp mytestsuite.robot
          

          robot --i temp mytestsuite.robot
          

          【讨论】:

            猜你喜欢
            • 2017-09-21
            • 2015-11-27
            • 1970-01-01
            • 2014-02-27
            • 2019-09-03
            • 1970-01-01
            • 2020-07-12
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多