目的:jenkins在进行分布式构建后,实现在jenkins控制台直接看到自动化用例测试结果,就不用登录到每个节点在本地看了,便于问题排查
Post-build Actions,一般是指在构建完成后的操作,比如邮件通知相关人员构建结果之类、或者触发自动化执行等
1、在任务的【Post-build Actions】中配置【Publish Robot Framework test results】选项
2、配置robot报告路径
一般配置节点机器上保存robot报告的路径,要根据output文件放在哪里,默认在Jenkins安装目录中workspace文件夹下面),默认可以不填
如果任务里的pybot命令使用参数-d 指定了输出目录,那么这里必须要设置程和pybot命令指定的输出目录,否则插件找不到output.xml文件,也就无法解析结果了。
Thresholds for build result:阀值设置,如80%和100%,测试用例执行成功率和通过率的设置
我这里实现的是Python脚本里面指定了放报告的路径,每次按照当前时间生成一个文件夹,这样就能把每次自动化测试的结果保留下来,这种情况下每次任务构建输出的报告就不是固定的一个目录,所以可以把每次生成的日志拷贝到一个固定目录,然后报告的路径就填这个固定目录的
def copy_demo(src_dir, dst_dir): """ 复制src_dir目录下的所有内容到dst_dir目录 :param src_dir: 源文件目录 :param dst_dir: 目标目录 :return: """ if not os.path.exists(dst_dir): os.makedirs(dst_dir) if os.path.exists(src_dir): files = os.listdir(src_dir) print(files) for file in files: file_path = os.path.join(src_dir, file) dst_path = os.path.join(dst_dir, file) if os.path.isfile(os.path.join(src_dir, file)): shutil.copy2(file_path, dst_path) else: copy_demo(file_path, dst_path) print("存在多级文件夹,正在复制。")
3、查看robot result
配置完成后在任务详情页可以看到Robot Result表示日志配置成功,任务构建完成后点击Robot Result可以看到最新一次的日志结果,点击Browser result可以看到详细的日志结果,具体是哪些用例成功,那些用例失败,这样就不用每次都到对应的机器上去看结果了