jenkins+allure+持续构建+一些配置和遇到的问题
jenkins合入之后,想从jenkins端直接allure-serve 看报告,没有搭建网络服务,看不了,看了下jenkins有allure-report插件。
以下是设置顺序:
1.slave机器下载allure2的安装包并解压
wget https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/2.13.3/allure-commandline-2.13.3.zip
2.jenkins添加allure-report插件
3.jenkins全局工具配置allure report
4.slave机器配置好java环境
5.jenkins构建后report设置(根据自己的maven的项目result地址设置)
6.构建后生成报告一直没有数据,看了下操作台日志,说找不到report目录,修改了一下配置:
遇到的其他的问题和解决方案:
1.mvn clean的时候经常出现mvn clean 东西删不掉,登录slave机器后手动可以删除,怀疑是权限问题,后面排查了一下,应该是yaml资源关闭之类的问题
解决办法:没有找到源头解决方案,解决方法是手动rm target文件夹;
2.allure 命令在slave机器中手动用的时候可以用,在jenkins中用不了,屡次报错,也是权限问题,修改后搞定;
解决办法: chmod -R 777 /path-to-allure
3.优化代码结构,让所有接口请求共享cookie,使用了一个RequestSpecBuilder()
类来传cookie,结果一直有问题,json一直传不了,后来把builder放在jsonbody赋值的前面。
解决办法:原因是build的时候会把之前request传入的一些数据的域清空,应该是restassured的官方的一个bug,有时间的话去给原作者提一个bug.