网站首页 > 技术文章 正文
一、jenkins的环境配置
二、Appium+Jenkins构建配置
1.登录Jenkins系统,点击‘新建’
新建项目
2.输入项目名称,选择第一个选项,点击保存
项目名称
3.在项目界面选择‘构建触发器’→‘构建’→‘增加构建步骤’中选择‘Execute shell’
构建shell指令
4.在Execute shell界面输入如下指令:cd D:\python\python3.6.1\python36.exe D:\work\appium_test\runtest.py;假如想在Jenkins中启动appium-server服务时,可以添加如下指令:call start cmd.exe /k D:/java/appium/node/node.exe C:/Users/admin/AppData/Roaming/npm/node_modules/appium/build/lib/main.js --address 127.0.0.1 --port 4723
Execute shell界面1
Jenkins启动appium-server服务
5.在构建后操作选择E-mail Notification选项
E-mail Notification
6.在E-mail Notification界面输入接收者邮箱地址,点击保存
邮箱地址
7.点击立即构建
立即构建
8.运行结果,点击返回面板,在Jenkins主界面可以看到如下图所示
Appium-test项目
配合端收件邮箱收件结果:
收件箱
二、构建过程中需注意以下几点:
1.保障appium和模拟器处于启动链接状态
2.脚本中启动app的目录需与jenkins构建后存放apk的目录一致
3.脚本中生成的html测试报告需存放在统一规定目录下
4.脚本结构及规则
>Common目录:共通的方法
>TestDemo(unittest.TestCase):测试类名;Test+测试的模块名;继承unittest的testcase类
>setUpClass(cls):执行用例之前的初始化操作;配置模拟器信息、测试apk信息,启动app应用;
>tearDownClass(cls):完成用例后的退出处理;
>test_login(self):具体的测试case
>if __name__ == '__main__':脚本主入口;加载用例,形成html格式的测试报告
三、配置过程中遇到的坑
1.点击立即构建,提示ImportError:No module named 'appium'
问题1
解决方法是:你安装的Python可能有好几个版本,设置指定你当前Python编译器版本(或者用Python绝对路径去运行代码),在Jenkins中的Excute shell中写入Python编译器的绝对路径即可
2.在Jenkins中构建过程中提示:[test] $ sh -xe C:\Windows\TEMP\hudson6299483223982766034.sh系统找不到指定的文件,分析原因是因为选择了Excute shell来执行指令
解决办法是:在‘构建’选择Execute Windows batch command 来执行指令 参考资料:提示找不到系统问题
- 上一篇: 开始使用Vue-基础篇(使用vuex)
- 下一篇: mac和windows上安装nvm管理node版本
猜你喜欢
- 2024-09-29 Hexo历险记之二多系统安装Node(小人历险记森林深处电脑版免安装)
- 2024-09-29 Win7环境下成功安装Nodejs18.16.1
- 2024-09-29 个人云笔记系统搭建(针对window操作系统)
- 2024-09-29 Npm 安装提示 EUNSUPPORTEDPROTOCOL 错误
- 2024-09-29 一个优雅的将NodeJS项目打包成跨平台可执行文件的神器——pkg
- 2024-09-29 Skywalking的编译打包(skywalking java)
- 2024-09-29 windows 安装 node-canvas(windows安装node环境)
- 2024-09-29 Gatlab 10.4.6中挖矿病毒处理与升级过程记录
- 2024-09-29 json - server:mock接口工具使用(mock-server.js)
- 2024-09-29 用一次就会爱上的cli工具开发(cli 工具)
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)