本文主要介绍在windows环境下搭建app自动化测试环境,具体步骤如下:
1.下载安卓sdk,网上很多资源
2.下载并安装安卓模拟器,官网上有
删除bin文件下的adb.exe和nox_adb.exe,再拷贝android sdk/platform-tools/bin.exe至模拟器安装文件夹bin下,分别命名adb.exe和nox_adb.exe,等于是替换这2个文件。
按住shift+鼠标右键,选择“在此处打开新窗口”,在控制台窗口中输入adb devices,出现以下结果,说明环境安装成功了。
有的文章写到需要先执行nox_adb.exe connect 127.0.0.1:62001,感觉不需要,也很矛盾,因为在adb devices之前还不知道设备名称,如果模拟器重启,需要执行nox_adb.exe connect 127.0.0.1:62001
3.安装需要测试的apk,拖动apk文件至模拟器中即可。
4.查看安装包信息,aapt dump badging e:\巡检安装包\v1.3.5.apk
5.配置appium桌面服务器
选择安装包,填写设备名称,点击启动按钮。
6.编写启动脚本
import time
from appium import webdriver capabilities = {}
# Android平台测试
capabilities['platformName'] = 'Android'
# 手机版本
capabilities['platformVersion'] = '5.1.1'
# 设备名称
capabilities['deviceName'] = '127.0.0.1:62001'
# app包名
capabilities['appPackage'] = 'com.hrg.ric.plus'
# app主入口activity
capabilities['appActivity'] = 'com.hrg.ric.activity.LoginActivity'
capabilities['unicodeKeyboard'] = 'True'
capabilities['resetKeyboard'] = 'True'
# 连接测试机所在服务器
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', capabilities) try:
# 通过andriod sdk自带工具uiautomatorviewer获取id
driver.find_element_by_id('com.hrg.ric.plus:id/et_email_phone').clear()
driver.find_element_by_id('com.hrg.ric.plus:id/et_email_phone').send_keys('136xxxxxxxx')
driver.find_element_by_id('com.hrg.ric.plus:id/et_password').clear()
driver.find_element_by_id('com.hrg.ric.plus:id/et_password').send_keys('')
driver.find_element_by_id('com.hrg.ric.plus:id/btn_login1').click()
except Exception as e:
print("no such element")
print(e) time.sleep(2)
#断开连接
driver.quit()
红色部分是需要根据具体情况进行替换的。
其中可以用android sdk自带的autonatorviewer工具(tools文件夹下)寻找各个控件的id。
点击第二个小按钮,会出现安卓模拟器界面,然就交替操作模拟器和此按钮来同步界面。
执行脚本
至此,已完成环境搭建和最简单的例子,后面主要工作就是编写代码。