【Mac + Appium + Python3.6学习(五)】之常用的Android自动化测试API总结
Github测试样例地址:https://github.com/appium-boneyard/sample-code/tree/master/sample-code/examples
①定位text,通过UiSelector定位
# text定位
self.d.find_element_by_android_uiautomator("new UiSelector().text(\"手机相册\")").click()
②中文输入问题,输入中文不显示:
# 在参数设置中配置: "unicodeKeyboard": True,
"resetKeyboard": True
如果一直弹unicode框提示重新安装,则参考我的另一篇文章《【Mac + Appium学习(二)】之Android自动化测试,appium-desktop配置和简易自动化测试脚本》(第一节第4小点)
# 配置完成之后再运行,还是采取UiSelector定位
self.d.find_element_by_android_uiautomator("new UiSelector().text(\"请输入内容\")").send_keys("安全隐患")
但是又发现变为乱码了,参考解决办法:《appium+python自动化61-中文输入乱码问题解决》
1.将unicodeKeyboard和resetKeyboard参数设置为True
2.手机设置设置-语言与输入框,Appium Android Input Manager for Unicode设置默认
③父子级定位
待续
④滑动:
《appium\selenium+python 滑动屏幕直至某元素出现》
⑤获取相同元素的最后一个元素定位:
# 元素1
list = self.d.find_elements_by_id("cn.sqm.citymine_safety:id/item_tv_personnel_name")
num = len(list)
list[num-num].click()
self.d.find_element_by_android_uiautomator("new UiSelector().text(\"xxx\")").click()
self.d.find_element_by_id("cn.sqm.citymine_safety:id/tv_complete").click()
# 元素2
list = self.d.find_elements_by_id("cn.sqm.citymine_safety:id/item_tv_personnel_name")
num = len(list)
list[num-1].click()
⑥其他常用元素定位请参考:
《Appium Appium Python API 中文版 By-HZJ》*
《appium+python自动化30-list定位(find_elements)》
《Appium python+appium 如何判定某元素存在》
《Appium+Python 自动化-appium常用元素定位方法》
《appium\selenium+python 滑动屏幕直至某元素出现》
《Appium python自动化测试系列之元素的定位(六)》
《python+appium-desktop:安卓(android)7.0以上使用appium无法定位元素(无法refresh)且 无法运行脚本》
【Mac + Appium + Python3.6学习(五)】之常用的Android自动化测试API总结的更多相关文章
- 【Mac + Appium + Python3.6学习(六)】之安装Android模拟器(Genymotion)并运行模拟器进行自动化
环境: MacOS:10.13.6 Virtualbox:5.2.22 Genymotion:genymotion-2.12.2 本文Virtualbox.Genymotion下载地址: 链接:htt ...
- 【Mac + Appium + Python3.6学习(四)】之常用的IOS自动化测试API总结
环境: Appium:1.9.1 Appium-desktop:1.7.1 Xcode:10.0 IOS:iPhone5S(10.3.3) Mac:10.13.6 ①获取手机屏幕size:长.宽 &l ...
- 【Mac + Appium + Python3.6学习(二)】之Android自动化测试,appium-desktop配置和简易自动化测试脚本
上一篇文章介绍安装appium测试环境,这一片研究介绍如何测试Android自动化. 上一篇地址:<[Mac + Appium学习(一)]之安装Appium环境> 这一篇参考:<Ma ...
- 【Mac + Appium + Python3.6学习(三)】之IOS自动化测试环境配置
在做这一节之前先配置我的另一篇文章所需要安装的前提准备条件:<[Mac + Appium学习(一)]之安装Appium环境前提准备> 一.安装IOS自动化测试环境 配置环境: Appium ...
- python3.4学习笔记(十) 常用操作符,条件分支和循环实例
python3.4学习笔记(十) 常用操作符,条件分支和循环实例 #Pyhon常用操作符 c = d = 10 d /= 8 #3.x真正的除法 print(d) #1.25 c //= 8 #用两个 ...
- python3.4学习笔记(六) 常用快捷键使用技巧,持续更新
python3.4学习笔记(六) 常用快捷键使用技巧,持续更新 安装IDLE后鼠标右键点击*.py 文件,可以看到Edit with IDLE 选择这个可以直接打开编辑器.IDLE默认不能显示行号,使 ...
- Python3.5 学习五
心灵鸡汤电影推荐: 阿甘正传.辛德勒名单.肖申克的救赎.勇敢的心.角斗士.美国丽人.教父.钢琴师.指环王.西雅图不眠夜.廊桥遗梦.可可西里的美丽传说.放牛班的春天.血钻.战争之王.上帝之城.中央车站. ...
- 五、Android学习第四天补充——Android的常用控件(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 五.Android学习第四天补充——Android的常用控件 熟悉常用的A ...
- python3.4学习笔记(十八) pycharm 安装使用、注册码、显示行号和字体大小等常用设置
python3.4学习笔记(十八) pycharm 安装使用.注册码.显示行号和字体大小等常用设置Download JetBrains Python IDE :: PyCharmhttp://www. ...
随机推荐
- mavn项目(springMVC) 引入静态资源(js、css)等
在web.xml中配置 <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern ...
- java 过滤器(理解二)
request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf ...
- Centos 7 通过yum的方式安装配置Artifactory 5.10
制品仓库系统有很多,例如:Artifactory,Nexus,Archiva, 其中Artifactory拥有很多强大的企业级特性和人性化的用户接口,很多大型的公司都在使用它. 背景:因客户需求,需要 ...
- Rails零散知识
1. 邮箱验证VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-]+(\.[a-z\d\-]+)*\.[a-z]+\z/i validates :email, pres ...
- 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何实现开平方的Pow函数
使用函数EXPT即可(输入的两个参数都可以是LREAL类型),注意跟计算器对比是Xy,所以4的0.123次方结果是1.18 4的0.5次方是2 更多教学视频和资料下载,欢迎关注以下信息 ...
- 理解和使用 Promise.all 和 Promise.race
一.Pomise.all的使用 Promise.all可以将多个Promise实例包装成一个新的Promise实例.同时,成功和失败的返回值是不同的,成功的时候返回的是一个结果数组,而失败的时候则返回 ...
- Linux下Wi-Fi配置工具2
上回说到,linux下面的Wi-Fi配置工具,说是江湖多事,风起云涌...嗯,这回是真的要动手配置了.各种麻烦啊,想死的心都有了有木有啊. 尝试用iwconfig 话说上回说用iwconfig配置Wi ...
- VUE 方法
1.$event 变量 $event 变量用于访问原生DOM事件. <!DOCTYPE html> <html lang="zh"> <head> ...
- struts 防止重复提交表单
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC &qu ...
- Android实现小圆点显示未读功能
代码地址如下:http://www.demodashi.com/demo/13541.html 前言 以前我们实现这个功能都是用 BadgeView.java,大体就是将这个java类复制到自己的项目 ...