1、安装appium
(1)首先去网站下载一个appium的exe安装包。官网上的话下载比较慢,可以找资源去下载一下。
-----注:这边就是简单的一个安装方式、还有一个比较复杂的,后续我再更新。
(2)然后我们直接双击下面的exe安装包进行安装即可。
(3)打开appium,可以看到界面如下图所示:
这个就是appium已经安装完成了。
2、安装安卓模拟器
这边我安装的呢是雷电模拟器,这个主要看你们自己装什么都可以,有雷电模拟器、什么逍遥模拟器等等。
3、安装PyCharm
这个可以安装一个社区版的因为是免费的不需要激活。
4、准备待测的APP的安装包
打开我们的安卓模拟器,直接将安装包拖进模拟器安装。
以上就是我们的一个环境配置过程,下面讲一个简单的UI自动化实例。
1、首先我们要打开pycharm,写几个基础的脚本,这个是配置的一个脚本
每一行的一个配置就不多做解释了,这边都有注释,按照自己的环境进行配置即可,这边说下app的包名和activity如何查看。
方法1:如果装了andriod-sdk的话,sdk下面build-tools里有个工具aapt,通过命令可以查看到包名和activity名。
方法2:通过命令来获取
获取所有app的包名:adb shell pm list packages
获取activity名:adb shell dumpsys activity activities >d:\log.txt 这个txt文件就是会记录了你最近打开的app的activity名
把获取到的包名和activity名写到上面对应位置。
下面我们就要试一下我这个配置是否有问题,我们就要执行这段脚本,看看是否可以成功打开要测试的app,如果打开了就说明是配置正确的。
后面我们就要开始做UI自动化测试了,UI自动化测试很重要的就是要进行元素定位。我们这边用到一个工具:uiautomatorviewer,通过这个工具进行元素定位。
import time from appium import webdriver desired_caps = { ‘platformName’: ‘Android’, ‘deviceName’: ‘emulator-5554’, # Android模拟器名称 ‘platformVersion’: ‘5.1.1’, # android模拟器版本 ‘appPackage’: ‘com.anji.saftysupervisionapplication’, # 包名 ‘appActivity’: ‘.activity.FlashActivity’ # 应用activity } driver = webdriver.Remote(‘http://127.0.0.1:4723/wd/hub’, desired_caps)
查找元素前 必须sleep等待获取元素
time.sleep(3)
用法一:通过id查找
driver.find_element_by_id(“com.anji.saftysupervisionapplication:id/et_account”).click() driver.find_element_by_id(“com.anji.saftysupervisionapplication:id/et_account”).send_keys(“JTliqinkan”) driver.find_element_by_id(“com.anji.saftysupervisionapplication:id/et_password”).click() driver.find_element_by_id(“com.anji.saftysupervisionapplication:id/et_password”).send_keys(“123456”) driver.find_element_by_id(“com.anji.saftysupervisionapplication:id/btn_login”).click() print(“login successfully”)
查找元素前 必须sleep等待获取元素
time.sleep(3)
用法二:通过xpath查找
driver.find_element_by_xpath("//*[@text=‘快捷入口’]").click()
查找元素前 必须sleep等待获取元素
time.sleep(3) driver.find_element_by_xpath("//*[@text=‘对象、内容、范围’]").click() time.sleep(3) driver.quit()
以上是我用id和xpath做的简单的一个UI自动化,可以参考学习。
作者:VictoriaGu
原文链接:https://blog.csdn.net/VictoriaGu/article/details/109532035