如何在机器人框架中无限地或至少有限地运行多次测试。
例如:
测试案例1 。 。
测试案例2 。 。 。 测试案例3 。 。 。 我希望测试以1,2,3,1,2,3的顺序运行...有限(大数)或无限运行。
我知道如何进行单次测试。但我想让它回来并在测试3之后进行测试1.我希望这个批次能够循环运行。
答案 0 :(得分:2)
无法在RF中创建无限循环,无限循环地反复运行当前文件。相反,你可以创建一个指向RF文件的脚本,为你处理无穷大(ness),然后在需要时,杀死进程并将所有output.xml
连接在一起,创建所有的母亲母亲RF报告。这是Python中的一个简单示例:
import subprocess
import os
import glob
try:
while True:
subprocess.call("robot EnterFileNameHere.robot") # Add any robot options you may want
except KeyboardInterrupt:
total = []
os.chdir("/DirectoryWhich/HasAll/TheXML/Files")
for GrabbedFiles in glob.glob("*.xml"):
total += GrabbedFiles
Converted = " ".join(str(x) for x in total)
subprocess.call("rebot {0}".format(Converted)) # Add any rebot options you may want
更改目录以匹配文件所在的位置,这应该无限制地启动您选择的机器人文件,不断创建报告文件/输出文件。一旦你杀了它(使用CTRL + C),它将接受为KeyboardInterrupt
,然后为你合并所有输出文件,然后关闭终端。
在RF本身中执行此操作的唯一方法是通过此答案here,但这只会在循环完成后为您生成报告。如果你突然杀了RF,我不知道如何处理报告生成。我认为它根本不会创建任何报告。所以我个人认为这是你最好的选择。
有任何问题让我知道。