newman+allure执行脚本
newman直接执行
存在问题
- 执行结果不清晰
使用allure插件
-
解决newman/postman自身测试报告极其简单,不方便查阅及排查问题
-
执行命令简介
#newman执行脚本: newman run 测试集文件.json -e 环境变量.json -r allure --reporter-allure-export allure_report #创建allure报告: allure generate allure_report -o allure_html --clean #打开allure报告: allure open allure_html
基于newman+allure建立项目
-
目录结构
├─main.py main文件,调用Run_case()方法执行用例 ├─run.py 封装执行测试用例命令行,对外暴露方法名Run_case() ├─allure_report(有几个环境建立几个文件夹 14、IM、CN环境) | ├─Runcase_report allure测试报告 | | ├─IM | | ├─CN | | ├─14 | ├─Runcase_data allure执行数据 | | ├─IM | | ├─CN | | ├─14 ├─Api | ├─test_case 测试用例地址 | | └Teacherin.json | ├─environment 环境变量文件 | | ├─env14.json | | ├─envCN.json | | └envIM.json
-
核心代码(run.py)
import os def Run_case(casename, reportname, envtype='14'): """ reportname: 测试报告名称 casename: 测试用例的名称(相对路径) envtype: 执行环境 """ # 执行case命令,需要兼容多条case情况 newman_order = 'newman run Api/test_case/' + casename + ' -e Api/environment/env' + envtype + '.json -r allure --reporter-allure-export ./allure_report/Runcase_data/' + envtype + '/' + reportname # 生成报告命令 creat_allure = 'allure generate ./allure_report/Runcase_data/' + envtype + '/' + reportname + ' -o ./allure_report/Runcase_report/' + envtype + '/' + reportname + ' --clean' # 打开报告命令 open_allure = 'allure open ./allure_report/Runcase_report/' + envtype + '/' + reportname # print(newman_order,creat_allure,open_allure) print("使用newman执行postman脚本") os.system(newman_order) print("生成allure报告") os.system(creat_allure) print("打开allure报告") os.system(open_allure) return True