- Appium自动化测试框架
- Pytest编写测试用例
- 配置Github项目地址
- 配置Jenkins Salve 节点执行
- 对应的执行脚本
- 生成测试报告
- 发送测试信息
脚本需要
运行环境:
- Appium
- python3
- pytest
- git
Appium自动化测试框架
配置文件:iAppium_python.json
- 将配置文件复制到本地磁盘的[user.home]目录
- linux 环境下,将 iAppium_python.json 放到 [HOME] = ~ 目录下
- windows 环境下,将 iAppium_python.json 放到 [HOMEPATH] =
C:\Users\user
目录下
Pytest编写测试用例
运行命令:
pytest -v test/cm_test.py --tc-file ./iAppium_python.json --tc-format json
配置Github项目地址
https://github.com/rainbowzhouj/iAppium_python.git
配置Jenkins Salve 节点执行
在Linux服务器上,安装好Jekins后,可以将本机或docker 配置为jenkins的Salve节点。
以将本机(window 系统)配置为Salve 节点 为例:
配置Salve节点
Jenkins主页面->管理 Jenkins
选择 Manage Nodes and Clouds -> 新建节点
名称输入salve,选择Permanent Agent
远程工作目录输入E:\jenkins-slave
启动方式选择Launch agent by connecting it to the master
点击保存
分别点击jenkins-agent.jnlp、agent.jar进行下载
下载后,运行jenkins-agent.jnlp
可能遇到的问题
“provied port:xxx is not reachable”
解决方式:在Linux服务器上,开启相应的端口号,如xxx为50000,则先启用50000端口,再重启防火墙
firewall-cmd --add-port=50000/tcp --permanentfirewall-cmd --reload
Jenkins 与 Github 密钥配对
在Linux上,生成密钥对
ssh-keygen -t rsa -C "rainbowzhouj@gamil.com"
生成公钥和私钥
cat ~/.ssh/id_rsa.pub 发送给github
cat ~/.ssh/id_rsa 写入到jenkins
对应的执行脚本
选择执行windows批处理命令
cd /d C:\Users\user\PycharmProjects\iSelenium_Python
pip3.9 install -r requirements.txt
pytest -v test/cm_test.py --tc-file ./iAppium_python.json --tc-format json --alluredir "E:\jenkins-slave\workspace\test-appium\allure-results" -clean
cd 切换到相应的目录
pip3.9 安装相应的依赖包
pytest 执行自动化测试命令
–alluredir 指定生成Allure的目录
生成测试报告
Jenkins上安装Allure插件
Linux服务器上安装allure commandline
指定相应生成的allure-results
可能遇到的问题
打开allure 报告,显示无数据
查看控制台输出 “allure-results does not exist”
解决方式:将–alluredir 后面的参数与
工作目录设置为一致,如在配置results目录时,加上项目文件名
发送测试信息
邮件通知
安装邮件插件
配置相应的smtp