Robot Framework中如何为每个.robot测试套件生成独立的report.html
Robot Framework单测试文件独立生成报告解决方案
Robot Framework默认运行时会使用固定的报告、日志、输出文件名,因此多次运行不同文件时会出现覆盖问题,可通过以下两种方案解决:
方案1:命令行运行时自定义输出参数
运行单个robot文件时,通过额外参数指定输出文件的名称,即可避免覆盖,参数说明如下:
-d 目录名:指定所有输出文件的存储目录,避免根目录文件杂乱-o 文件名.xml:自定义输出的结构化结果文件名称-l 文件名.html:自定义日志文件名称-r 文件名.html:自定义测试报告文件名称
对应三个测试文件的运行命令如下:
- 运行
loginTest.robot:robot -d results -o login_output.xml -l login_log.html -r login_report.html loginTest.robot - 运行
purchasetest.robot:robot -d results -o purchase_output.xml -l purchase_log.html -r purchase_report.html purchasetest.robot - 运行
signinwith_facebook.robot:robot -d results -o facebook_output.xml -l facebook_log.html -r facebook_report.html signinwith_facebook.robot
方案2:修改PyCharm运行配置
如果直接在PyCharm中点击运行按钮执行测试,可按以下步骤为每个测试文件配置独立输出规则:
- 点击PyCharm右上角运行配置下拉框,选择「Edit Configurations」
- 找到对应robot文件的现有运行配置,或新建Robot Framework类型的运行配置
- 在「Arguments」输入栏中填入对应文件的自定义参数,例如
loginTest.robot就填入-d results -o login_output.xml -l login_log.html -r login_report.html - 保存配置后再次运行,即可生成对应名称的独立报告,不会被后续运行覆盖
可选:批量运行自动生成独立报告
如果需要经常运行多个测试文件,可编写简单脚本自动完成命名,避免每次手动输入参数,示例Windows批处理脚本如下:
@echo off for %%f in (*.robot) do ( robot -d results -o %%~nf_output.xml -l %%~nf_log.html -r %%~nf_report.html %%f )
运行该脚本会自动遍历当前目录下所有robot文件,为每个文件生成带自身文件名前缀的报告,无需手动修改参数。
内容的提问来源于stack exchange,提问作者Kasun Ishanka Yapa
相关产品推荐
相关产品推荐

