您的位置:首页 > 移动开发

Appium在Android手机执行测试脚本

2017-04-02 23:16 417 查看
由于Android的模拟器不是很好用,我建议直接从手机开始执行测试脚本。

准备工作如下:

一台Android手机,我的机器是Android6.0版本。

开启设备的usb调试,可以开启开发者选项,再确认是否打开,记得一定要在手机端授权电脑的连接,如果没看到这个提示,建议重新插拔手机再试一下。

通过adb查找设备的uid,命令是adb devices,那一串数字就是设备的uid,最好只连一个设备。

运行测试用例失败

有几种可能导致运行测试用例失败:

Appium环境错误,可以通过运行
node appium-doctor.js
来检查环境。

Appium上一个测试进程还没有退出,重启服务就可以解决。

adb无法正常连接,可能是第三方手机助手占用了adb的端口。

脚本中有关主机地址的信息错误,需要根据自己在Appium中设置的主机地址来修改。

脚本中有关应用的包名和Activity名错误,获取正确包名和Activity名的方法有两种:

1 通过aapt dump badging查看apk文件。

2 通过adb shell “dumpsys window | grep mCurrentFocus”查看手机上当前正在显示的应用相关信息。

启动Appium服务

可以通过命令行启动,也可以通过应用图标启动,通过命令行可以将测试过程集成到自动编译环境中去,具体命令如下:

node appium.js --session-override


如果只是为了调试,可以直接通过应用图标启动。

启动Appium服务的GUI界面后,点击第一个图标,需要设置一些信息,找到capability,输入手机设备相关的信息;找到advanced,输入android SDK的路径。

准备测试脚本

准备一个文本文件test,输入下面的内容:

#coding=utf-8
from appium import webdriver

desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '6.0'
desired_caps['deviceName'] = 'NB45071511001'
desired_caps['appPackage'] = 'com.android.calculator2'
desired_caps['appActivity'] = '.Calculator'

driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

driver.find_element_by_name("1").click()

driver.find_element_by_name("5").click()

driver.find_element_by_name("9").click()

driver.find_element_by_name("9").click()

driver.find_element_by_name("5").click()

driver.find_element_by_name("+").click()

driver.find_element_by_name("6").click()

driver.find_element_by_name("=").click()

driver.quit()


将文件后缀改为py。这个文件“test.py”就是后续将在手机测运行的测试脚本。

执行测试脚本

在test.py文件路径下打开命令后,执行
python test.py
,可以看到手机端会自动启动计算器,点击数字执行一系列操作。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  测试 自动化测试
相关文章推荐