如何在带有时间戳的某个文件夹中保存Robot框架测试运行日志?

时间:2016-01-25 10:54:00

标签: robotframework

我正在使用Robot Framework来运行50个测试用例。每次按预期创建以下三个文件:

c:\users\<user>\appdata\local\output.xml
c:\users\<user>\appdata\local\log.html
c:\users\<user>\appdata\local\report.html

但是当我运行相同的机器人文件时,这些文件将被删除,并且将创建新的日志文件。

我希望将来保留所有以前的运行日志。日志文件应保存在具有时间戳值的文件夹中。

注意:我正在从命令提示符(pybot test.robot)运行机器人文件。不是来自RIDE。

有人可以指导我吗?

4 个答案:

答案 0 :(得分:3)

使用机器人的内置功能

机器人框架用户指南的标题为Timestamping output files的部分介绍了如何执行此操作。

来自文档:

  

本节中列出的所有输出文件都可以使用选项--timestampoutputs(-T)自动加上时间戳。使用此选项时,格式为YYYYMMDD-hhmmss的时间戳放在每个文件的扩展名和基本名称之间。例如,下面的示例将创建输出文件,如output-20080604-163225.xml和mylog-20080604-163225.html:

     

robot --timestampoutputs --log mylog.html --report NONE tests.robot

要指定文件夹,用户指南,Output Directory下的Different Output Files部分中也会记录此文件夹:

  

...默认输出目录是从中开始执行的目录,但可以使用--outputdir(-d)选项进行更改。使用此选项设置的路径再次相对于执行目录,但自然也可以作为绝对路径给出...

使用帮助程序脚本

你可以写一个执行两个职责的脚本(在python,bash,powershell等中):

  1. 使用您想要的所有选项启动pybot
  2. 重命名输出文件
  3. 然后您只需使用此帮助程序脚本,而不是直接调用pybot。

答案 1 :(得分:0)

在执行结束时,我很难确定如何创建带有时间戳的目录。这是我的脚本,它为文件加上时间戳,但是我真的不想要吗,只是每次执行后带有时间戳的目录中的默认文件名?

CALL "C:\Python27\Scripts\robot.bat" --variable BROWSER:IE --outputdir C:\robot\ --timestampoutputs --name "Robot Execution" Tests\test1.robot

答案 2 :(得分:0)

用户可以通过更新下面提到的文件夹中Settings.py文件中键“ OutputDir”的值来更新pycharm IDE中机器人框架的默认输出文件夹。

.. ProjectDirectory \ venv \ Lib \ site-packages \ robot \ conf \ settings.py

cli_opts字典enter image description here中的'outputdir'键值更新为“ str(os.getcwd())+” // Results // Report “ + datetime.datetime。 _BaseSettings(object)类别的now()。strftime(“%d%b%Y_%H%M%S”)“

_cli_opts = {
             # Update the abspath('.') to the required folder path.  
             # 'OutputDir'        : ('outputdir', abspath('.')),
             'OutputDir'        : ('outputdir', str(os.getcwd()) + "//Results//Report_" + datetime.datetime.now().strftime("%d%b%Y_%H%M%S") + "//"),
             'Report'           : ('report', 'report.html'),

答案 3 :(得分:0)

您可以使用时间戳将目录创建用于输出文件,就像我在RIDE FAQ中解释的那样

这取决于您的情况:

-d ./%date:~-4,4%%date:~-10,2%%date:~-7,2%