Linux下的Jenkins作为hub,Windows作为node节点,在Android手机上执行自动化脚本
1、在Linux上放selenium-server-standalone-2.53.0.jar,在jar包目录下执行命令java -jar selenium-server-standalone-2.53.0.jar -role hub,启动hub,提示Nodes should register to http://192.168.8.184:4444/grid/register/,Selenium Grid hub is up and running

浏览器打开http://192.168.8.184:4444/grid/console,页面打开成功
2、注册node节点
1)写Honor8_DevicesNode.json文件:
{
"capabilities": [
{
"deviceName": "GSL0217302005195",//设备UID
"version": "8.0.0",//设备版本号
"maxInstances": 3,
"platform": "ANDROID",//Android设备
"browserName": "chrome"
}
],
"configuration":
{
"cleanUpCycle":"2000",
"timeout":"30000",
"proxy":"org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"url":"http://192.168.27.209:4723/wd/hub",////appiumserver地址,即node地址
"host":"192.168.27.209",
"port":"4723",
"maxSession":"1",
"register":true,
"registerCycle":"5000",
"hubPort":"4444", //grid hub的端口号
"hubHost":"192.168.8.184"// grid hub的IP
}
}
2)在Windows服务器上放selenium-server-standalone-2.53.0.jar,进入jar包目录,通过cmd命令注册node节点,并启动appium server:appium -a 192.168.27.209 -p 4723 -bp 4724 --session-override --nodeconfig D:\Honor8_DevicesNode.json,Linux hub 日志提示:Registered a node http://192.168.27.209:4723,node注册成功
浏览器打开grid,提示注册成功

3、开始执行测试脚本,
附:方案历程
1)原先在Windows下执行用的脚本是用adb命令安装的,

在Windows下执行命令是:cmd.exe /c adb install -r D:\workspace\NVR-Rental-APP-Test\apps\rent_test_v1.5.0.apk
但是,在Linux下执行时,如下图,会自动获取工程所在的目录,也就是Linux的目录,导致安装失败(相当于Linux的安装包,通过Windows node 要在手机上装APP,肯定不行)

2)想到了远程安装,在Jenkins里写cmd批处理命令:
java wmic /node:192.168.27.209 /user:Administrator /ptassword:zj12345 process call create "cmd.exe /c adb install -r D:\apps\rent_test_v1.5.0.apk"
通过Jenkins远程安装成功,但是build 成功后,Jenkins切换不回Linux,还是用cmd命令,还是行不通

3)还是用DesiredCapabilities capabilities安装APP
先看这样写的效果,也是获取的Linux的工程目录,所以也安装不了

4)改下脚本,把APP的路径改成Windows系统
fan
最终,把APP 放到Windows下,可以成功安装APP
在调试过程中,尝试通过Jenkins自动构建执行远程命令,把Windows node注册到Linux hub上,但是尝试失败了;也想通过Jenkins的node插件,自动注册Windows node节点,后来查了下,Linux作为节点时,可以实现指定注册node,但是Windows必须是node主动注册到hub上,所以目前是手动注册Windows node 到Linux hub上
Linux下的Jenkins作为hub,Windows作为node节点,在Android手机上执行自动化脚本的更多相关文章
- 【初体验】macos下android ndk交叉编译hello world,并拷贝到android手机上执行
1.机器上以前安装了java 1.8(貌似android ndk不需要java) 2. 下载android ndk,版本是android-ndk-r14b (比较奇怪,我下载了最新的android-n ...
- 安装在Linux下的jenkins执行windows下的bat命令
launch method里面没有 launch agent via java web start 默认是disable 需要改成random 转载自: http://blog.csdn.net/so ...
- Linux下的Jenkins+Tomcat+Maven+Gitlab+Shell环境的搭建使用(jenkins自动化部署)
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)【转】
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- linux下的php网站放到Windows服务器IIS下导入 .htaccess文件伪静态规则转换 (wordpress)
需要特别注意的是: 1. .htacdess文件在 wordpress中 是可以生成的 安装 WP Super Cache后,开启该插件>>设置>>高级>>找到并点 ...
- linux下的php网站放到Windows服务器IIS下.htaccess文件伪静态规则转换
此办法只适合于linux下的php网站放到Windows服务器IIS下 , 网站除了主页面正常以外 子页面全部出现404错误 这里子页面出现404 错误是说明伪静态没有开启 什么是.htac ...
- 自动化服务部署(二):Linux下安装jenkins
jenkins是一个Java开发的开源持续集成工具,广泛用于项目开发,具有自动化构建.测试和部署等功能,它的运行需要Java环境. 上篇博客介绍了Linux下安装JDK的步骤,这篇博客,介绍下Linu ...
- 环境部署(二):Linux下安装jenkins
jenkins是一个Java开发的开源持续集成工具,广泛用于项目开发,具有自动化构建.测试和部署等功能,它的运行需要Java环境. 上篇博客介绍了Linux下安装JDK的步骤,这篇博客,介绍下Linu ...
随机推荐
- bootstrap 点击模态框上的提交按钮后,模态框不能关闭的解决办法
项目问题如下图, 点击确定后,模态框没反应,按理,点击删除按钮时,弹出确认删除的模态框,点击确定后,使用ajax请求服务器,把数据库中对应的数据进行删除,根据服务器 servlet返回的状态值(del ...
- 阿里云数据库备份DBS商业化发布,数据库实时备份到OSS
数据库备份DBS已于2018年5月17日正式商业化发布. 数据库备份(Database Backup,简称DBS)是为数据库提供连续数据保护.低成本的备份服务. 它可以为多种环境的数据提供强有力的保护 ...
- PHP curl_escape函数
curl_escape — 对给定的字符串进行URL编码. 说明 string curl_escape ( resource $ch , string $str ) 该函数对给定的字符串进行URL编码 ...
- 08-图8 How Long Does It Take(25 分)邻接表和队列
Given the relations of all the activities of a project, you are supposed to find the earliest comple ...
- 最强DE战斗力
最强DE战斗力 时间限制: 1 Sec 内存限制: 128 MB提交: 40 解决: 14[提交][状态] 题目描述 春秋战国时期,赵国地大物博,资源非常丰富,人民安居乐业.但许多国家对它虎视眈眈 ...
- HashMap的底层原理 cr:csdn:zhangshixi
1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现.此实现提供所有可选的映射操作,并允许使用null值和null键.此类不保证映射的顺序,特别是它不保证该顺序恒久不变 ...
- “pod repo push”遇到的2个问题的解决方案
podspec文件push到遇到的第一个问题,将进行记录,主要是参考了下面大神的解决方案,主要是为了方便学习和记录 第一个问题: xcrun: error: invalid active develo ...
- react教程 — redux
一.概念: http://caibaojian.com/react/redux-basic.html 或 https://www.cnblogs.com/maopixin ...
- wxparse使用(富文本插件)
优点:目前已知唯一可以转化HTML到小程序识别的插件 缺点:转换一个HTML标签可能需要大量的微信小程序标签还有样式 配置:第一步,下载 https://github.com/icindy/wxPar ...
- 120、TensorFlow创建计算图(二)
#创建一个计算流图 #大多数tensorflow程序开始于dataflow graph 的构造函数 #在这个命令中你执行了tensorflow api的函数 #创建了新的操作tf.Operation ...