Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Appium自动化执行填的大坑分享

Appium自动化执行填的大坑分享

作者头像
厦门-安仔
发布于 2021-01-05 15:53:01
发布于 2021-01-05 15:53:01
1.2K0
举报

自从泰斯特Club测试技术沙龙举办讲了UI自动化以后,就有很多人在问appium执行过程中断了要怎么处理?很多人都遇到这个问题,不知如何解决~对于这个问题解决方法,我是踩坑过来的,这个也是比较大的坑。待我一一说来。

首先先简单了解下appium的原理,appium是一个c/s结构,我简单的形象的说,appium 执行分为电脑跟手机。电脑端也是一个c/s架构,C就是自动化脚本,S就是appium 服务,自动化脚本通过webdriver协议请求端口4723请求到appium服务端,appium服务端接收请求后,返回一个待sessionid会话,后续的操作都是通过这个sessonid进行操作,这是电脑端操作,电脑跟手机的交互是通过socket协议4724端口进行交互,这是appium sever就充当客户端,而手机端就是bootstrap.jar进行操作,而boostrap.jar在下发命令给uiautomator进行操作,整体流程就是这样;

既然知道了是C/S架构,所以每次在调试的时候,记得打印下整体的请求,然后要注意查看S端返回的结果,那我们说下appium执行中断服务端的提示是Could not proxy command to remote server. Original error: Error: socket hang up;主要的原因是新版的appium的ui2server请求过于频繁,耗电量过高被软件或者系统认为是流氓软件直接kill掉。这个问题如果是使用appium1.13.x是不存在这个问题,如果是1.18.x以上就存在这个问题,当然这是我自己使用发现的,尽管1.19版本ui2server 为前端服务也存在这个问题。

解决方案如下:

1.appium setting,uiautomator2sever两个服务都给全部权限;

2.在设置的电量管理,把省电管理关掉,以及给ui2两个sever 不受耗电管理,具体你根据机型进行选择;

3.当前面两个都还无法解决的时候,一般是手机管理软件问题,你可以运行脚本,并且在dos下,运行adb logcat -v time > 电脑目录文件,然后当出现的时候,停止脚本,进入adb logcat 日志目录里面根据关键字io.appium.uiautomator2.server 进行查找,然后会找到force ui2ser 是哪个pid kill掉,

这时在通过adb shell ps |grep pid 找出那个包名,在通过命令adb shell pm uninstall -k --user 0 +包名 卸载这个软件,这个一般都是手机管家之类的,记得务必用这个命令。vivo设备:com.vivo.abe,联想设备:com.zui.safecenter,只要能搜索到直接卸载;

4.前面三个方法都是进行手机软件的管理删除,接下来就是自动化框架的修改,你可以检查session ,当出现中断,根据服务端返回内容判断,session断开了,然后检查是否还有session,如果没有,重新启动appium,建立一个session。

以上四个方法是完美解决这个大坑的秘籍,请遇到的同学以及问我的同学自取。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试一般不一般 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Appium自动化(六)Appium启动app
在之前文章有讲过环境搭建,appium 实现简易IOS app自动化测试demo和appium原理分析,那么我们这次去启动一个app,通过appium与设备app建立链接。
雷子
2021/03/15
2.7K0
前端工程师用Node.js + Appium实现APP自动化
最近在使用Appium做爬虫功能,网上全是python + Appium的教程,Appium也支持Node.js开发,作为前端工程师使用Node.js + Appium实现了自动化爬虫功能。
100000996525
2023/08/02
1.4K0
APP自动化测试系列之Appium介绍及运行原理
在上一篇APP自动化系列文章:APP自动化测试系列之adb连接真机和模拟器,主要介绍adb连接真机的两种方式及如何连接夜神模拟器。
可可的测试小栈
2020/09/29
3.6K0
APP自动化测试系列之Appium介绍及运行原理
Appium移动端自动化测试--基础预热
近日开始了移动端自动化测试的学习之路,决定在学习的过程中进行笔记,总结学习,印象或许会深刻一些。
软测小生
2019/12/12
1.5K0
自动化测试之路 —— Appium使用教程
当今社会,人们的生活几乎已经无法离开形形色色的APP了,它提供给我们的便利与服务意义远远超出了其本身的软件价值。作为测试来说移动应用也早已是各大互联网公司的拳头产品,其本身的开发周期短,附属产品价值高等特性决定了今后的主导地位。
Austin_zhai
2022/08/23
2.7K0
自动化测试之路 —— Appium使用教程
Appium运行原理与机制
做测试开发的童鞋都知道,UI自动化你绕不开selenium, webdrvier, appium框架,那么这三者之间有什么关联,它们的原理是什么呢?
赵云龙龙
2019/07/11
2.7K0
Appium运行原理与机制
微信小程序自动化方案之准备
Appium加载的过程图解 Appium加载过程 调用Android adb完成基本的系统操作 向Android上部署Bootstrap.jar Bootstrap.jar Forward Andr
用户5521279
2019/07/30
1.5K0
App自动化测试之Appium环境搭建
Appium是一个开源、跨平台的测试框架,可以用来测试原生及混合的移动端应用。Appium支持IOS、Android及FirefoxOS平台。支持多种语言。
小博测试成长之路
2021/03/08
2.2K0
App自动化测试之Appium环境搭建
Appium自动化测试框架
自动化测试需要通过代码的形式告诉手机测试那个应用程序的哪一个界面,所以需要通过某种方式定位到某个应用程序的某个页面。
大忽悠爱学习
2022/07/12
2.4K0
Appium自动化测试框架
Appium+python自动化(七)- 初识琵琶女Appium(千呼万唤始出来,犹抱琵琶半遮面)- 上(超详解)
  “千呼万唤始出来,犹抱琵琶半遮面”,经过前边的各项准备工作,终于才把appium这位琵琶女请出来。那么下边就由宏哥给各位看官、小伙伴们和童鞋们来引荐这位美女(帅哥)。这一篇主要是对前边的内容做一个小小的总结,我们不能只顾得埋头拉车,不记得抬头看路可不行哦!
北京-宏哥
2019/06/25
2.8K0
Appium+python自动化(七)-  初识琵琶女Appium(千呼万唤始出来,犹抱琵琶半遮面)- 上(超详解)
Appium移动自动化框架功能概括
(1)支持iOS、Android,可在多台机器上并行App 自动化,测试机型适配。
博文视点Broadview
2020/06/12
2.2K0
Appium移动自动化框架功能概括
自动化测试之路 —— Appium使用教程
当今社会,人们的生活几乎已经无法离开形形色色的APP了,它提供给我们的便利与服务意义远远超出了其本身的软件价值。作为测试来说移动应用也早已是各大互联网公司的拳头产品,其本身的开发周期短,附属产品价值高等特性决定了今后的主导地位。
Austin_zhai
2022/09/23
7.1K0
自动化测试之路 —— Appium使用教程
自动化-Appium-常用命令
自动化测试过程中通常会使用一些操作命令,如针对Android需要查看App的appPackage和appActivity;针对IOS需要查看App的bundleID等。
wangmcn
2022/07/25
2.1K0
自动化-Appium-常用命令
手机APP自动化之小白进阶_python
导语 本文介绍用python实现登录微信并发送公众号留言的几种方式,包括遇到的一些问题及解决方法,也附录了一些觉得很全面有用的资料,供想了解app自动化测试的同学参考。
Apan
2018/06/29
2.2K0
最新面试题汇总(附带答案)【建议看看】
1.查看聚合报告和服务器的资源使用图,检查响应时间,事务成功率,CPU,内存和IO使用率是否达到要求,如果出错率达到了总请求的3%,我们会检查是什么原因导致的,修改好后,重新测试;
全栈程序员站长
2022/11/10
1.1K0
win10上搭建appium自动化环境
以前都是在mac机器上搭建环境,觉得好麻烦,自己还曾今写了个脚本来一键搭建。 现在在win10上搭建,发现开始很容易,也会有一些坑。把这些坑都记录下来,也许将来可以翻翻。 前面已经搭建了java,android,node的环境,现在搭建appium是水到渠成了。 先去看看最新的版本是啥。打开官网appium.io有点慢,耐心等待。
赵云龙龙
2020/03/26
1.1K0
win10上搭建appium自动化环境
APP自动化测试系列之3种元素定位工具
上一篇Appium自动化系列文章:APP自动化测试系列之appium-desktop配置及录制脚本,主要介绍appium-desktop如何配置SDK、JDK、Desired Capabilities及录制脚本。
可可的测试小栈
2020/12/14
2.5K0
appium教程_1.基础概念认知
官网文档: http://appium.io/docs/cn/about-appium/intro/ 最好自行查阅,一下多为个人总结
千往
2020/09/08
2.3K0
appium教程_1.基础概念认知
Appium+python自动化(八)- 初识琵琶女Appium(千呼万唤始出来,犹抱琵琶半遮面)- 下(超详解)
  通过上一篇宏哥给各位小伙伴们的引荐,大家移动对这位美女有了深刻的认识,而且她那高超的技艺和婀娜的身姿久久地浮现在你的脑海里,是不是这样呢???不要害羞直接告诉宏哥:是,就对了。宏哥要的就是这个效果。达到这个效果,就说明你学的差不多了,可以出师了。今天继续由宏哥给你引荐这位琵琶美女。
北京-宏哥
2019/06/25
2K0
Appium+python自动化(八)- 初识琵琶女Appium(千呼万唤始出来,犹抱琵琶半遮面)- 下(超详解)
app自动化面试题
Activity是Android的四大组件之一,也是平时我们用到最多的一个组件,可以用来显示View。官方的说法是Activity一个应用程序的组件,它提供一个屏幕来与用户交互,以便做一些诸如打电话、发邮件和看地图之类的事情,它提供屏幕进行交互。每个Activity都会获得一个用于绘制其用户界面的窗口,窗口可以充满哦屏幕也可以小于屏幕并浮动在其他窗口之上。一个应用通常是由多个彼此松散联系的Activity组成,一般会指定应用中的某个Activity为主活动,也就是说首次启动应用时给用户呈现的Activity。
找Bug
2022/07/22
2K0
相关推荐
Appium自动化(六)Appium启动app
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档