如何在机器人框架中实现并行执行

Posted

技术标签:

【中文标题】如何在机器人框架中实现并行执行【英文标题】:how to achieve Parallel execution in robot framework 【发布时间】:2022-01-18 16:27:10 【问题描述】:

在我的测试套件中,我们仅在一个文件中包含 100 个测试用例

例如。 test_case_1 test_case_2 test_case_3 test_case_4 test_case_5

我想并行执行这个测试用例(比如 test_case_1 和 test_case_2 一次运行) 我已经尝试过 pybot 机器人框架,但是这个执行来自不同文件的测试用例 注意 - 我只有一个文件

【问题讨论】:

【参考方案1】:

Robot 无法并行运行测试用例。您必须使用外部工具(例如 pabot),或编写自己的代码将测试拆分为并行测试运行。

【讨论】:

【参考方案2】:

您可以使用 Jenkins 作为外部工具来配置您的 .robot 脚本以与 Jenkins 管道并行运行。这是免费使用的。这将显着减少您的执行时间,效果很好。详情在 - https://www.jenkins.io/blog/2017/09/25/declarative-1/ 您必须将 Jenkins 作业配置为 Freestyle 项目,然后添加一个步骤来运行 Windows 批处理命令来触发您的机器人脚本。

【讨论】:

【参考方案3】:

您仍然可以使用pabot 在一个套件中并行执行测试用例。您需要使用--testlevelsplit 选项。

例如pabot --testlevelsplit [path to suite with 100 test cases]

【讨论】:

以上是关于如何在机器人框架中实现并行执行的主要内容,如果未能解决你的问题,请参考以下文章

如何实现Robot框架在两台不同机器上并行测试执行?

如何在机器人框架中并行运行多个测试套件上的多个测试用例 | Python

如何在Golang中实现正确的并行性? goroutines是否与Go1.5 +并行?

使用 Robot 框架实现 Selenium 网格

论并行,并发,同步,异步之间的联系与区别

如何正确地开始在多个参数上并行执行两个函数?