本文主要介绍在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(\'123456\') 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。
点击第二个小按钮,会出现安卓模拟器界面,然就交替操作模拟器和此按钮来同步界面。
执行脚本
至此,已完成环境搭建和最简单的例子,后面主要工作就是编写代码。