机器人框架"输出.xml"复制到其他文件夹



当我尝试将文件'output.xml'从父文件夹复制到目标文件夹时,它没有正确复制,即:在目标文件夹中的文件大小为不同。我正在执行关键字以复制"套件拆除"中的文件。任何解决问题的解决方案。

编写为复制文件的代码:

OperatingSystem.Copy Files  ${sProjectPath}//output.xml  ${sFinalFolder}

问题是,在运行测试时,输出文件不存在。它在套房拆卸期间不存在,因为套件拆卸的结果必须是日志的一部分。

如果您需要在另一个文件夹中的log,最简单的解决方案是告诉机器人最初使用命令行选项 - 输出或-unputdir来写入。

如果您不能使用--output,则可能简单的解决方案是创建一个运行测试的脚本,然后在运行文件后复制该文件。这在标题为"创建启动脚本"部分的用户指南中提到。

一个更复杂的解决方案是使用侦听器,该侦听器在done方法中复制文件。

机器人运行报告是由Robot-Framework工具在末尾创建的。因此,即使在套件拆卸中,完整的结果/报告文件也不存在。

最佳实践将提供 - 与所需的输出dir一起提供 - UPUT参数。您可以从用户指南中找到更多详细信息机器人框架用户指南第3.5.1节

注意:命令行选项 - 输出(-o)确定相对于输出目录创建输出文件的路径。输出时,输出文件的默认名称是输出。xml。

替代方法可用于 rebot 命令,并在机器人运行生成的输出文件上行动。当使用Rebot进行后处理输出时,除非明确使用 - 输出选项,否则不会创建新的输出文件。

是否可以从机器人框架脚本完成,问题是应该从机器人脚本完成。这些文件可以通过当前的机器人框架过程锁定或更改。如果不是今天,这很可能是该领域未来变化的一部分。

从这个角度来看,我只建议在机器人框架开始之前复制这些文件,而不是之后。这确保了这些文件的内容没有更改,并且适合您的目的。

由于这些类型的操作通常不是测试案例场景的一部分,因此我认为它们是总体编排的一部分。这包括从版本控制软件中获取正确版本的测试脚本,启动机器人框架,传达结果(Ex。Email)和保护测试证据(日志文件和其他文件)。

通常,这些是詹金斯(Jenkins),特拉维斯(Travis)CI或竹子(仅举几例)等CI工具中的标准步骤功能。即使您仅在此路径上开始,将这种逻辑与测试脚本分开也会为您节省很多努力。

看起来复制文件kw 在拆卸过程中不会复制output.xml的内容,尽管它使用samename创建文件。正如A.Kootstra所建议的那样,这可能是当前的限制。

替代:在单独的机器人脚本中,您可以重命名第一个脚本生成的文件'output.xml',然后可以在命令下运行

复制文件

${sProjectPath}//output.xml  ${sFinalFolder} 

这复制了整个内容