重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1.Appium
创新互联是一家专业提供浑源企业网站建设,专注与成都网站制作、网站设计、外贸网站建设、H5高端网站建设、小程序制作等业务。10年已为浑源众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。Appium是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试, 它使用WebDriver协议驱动iOS,Android和Windows应用程序。
通过Appium,我们可以模拟点击和屏幕的滑动,可以获取元素的id和classname,还可以根据操作生成相关的脚本代码。
下面开始Appium的配置。
appPackage和APPActivity的获取
任意下载一个app
解压
但是解压出来的xml文件可能是乱码,所以我们需要反编译文件。
逆向AndroidManifest.xml
下载AXMLPrinter2.jar文件,逆向xml文件:命令行输入以下命令:
java -jar AXMLPrinter2.jar AndroidManifest.xml ->AndroidManifest.txt
获得以下可以查看的TXT文件
寻找带有launcher 的Activity
寻找manifest里面的package
Devicename的获取
通过命令行输入 adb devices:
appium的功能介绍
下面将根据上图序号一一介绍功能:
选中界面元素,显示元素相关信息
模拟滑动屏幕,先点击一下代表触摸起始位置,在点击一下代表触摸结束为止
模拟点击屏幕
模拟手机的返回按钮
刷新左边的页面,使之与手机同步
记录模拟操作,生成相关脚本
根据元素的id或者其他相关信息查找元素
复制当前界面的xml布局
文件退出
2.Python的脚本
元素定位的使用
(1).xpath定位
xpath定位是一种路径定位方式,主要是依赖于元素绝对路径或者相关属性来定位,但是绝对路径xpath执行效率比较低(特别是元素路径比较深的时候),一般使用比较少。
通常使用xpath相对路径和属性定位。
by_xpath.py
from find_element.capability import driver driver.find_element_by_xpath('//android.widget.EditText[@text="请输入用户名"]').send_keys('123456') driver.find_element_by_xpath('//*[@class="android.widget.EditText" and @index="3"]').send_keys('123456') driver.find_element_by_xpath('//android.widget.Button').click() driver.find_element_by_xpath('//[@class="android.widget.Button"]').click()