之前搭建了robotium的环境,并使用了一下,因为需要兼顾到ios的测试,所以这次又搭建了appium的环境。关于Appium的介绍网上有很多了,也可以去它的官网学习,这里就不在赘述了。
具体搭建步骤如下:
1. JDK安装,建议1.7以上
2. Eclipse安装
3. Androdd SDK安装
4. Android develop tool安装
5. 启动eclispse,并在windows->proference里配置android sdk路径,
其实这个步骤与robot的搭建步骤一致,只是少了robotium jar的引用
下面才是与appium相关的步骤:
a, 下载appium for windows exe版本(如果要在其他系统允许就下对应的版本)
另外,如果要用命令行安装appium,同时也需要安装nodejs并配置它的环境变量
b,安装模拟器,AVD或者genymotion,(genymotion运行更快一点)
c,引用selenium server的jar包, Junit包
d,下载appium的jar包:java-client.xxx.jar 并引用到eclispse
e,创建一个android工程,开始appium测试脚本的编写吧。(前提是配置好被测apk文件,并启动appium.exe)
问题:
1. appium如何和被测app通信,
在appium gui或者测试脚本里指定被测apk的路径和名字。
2. appium如何与模拟器或实机通信。
同样,也要指定模拟器名,(比如IOS emulator,Android emulator)
3. 环境安装好后,遇到2个问题:
a, appium,模拟器启动后,调用appium里的inspector去识别对象时,报错说检测不到appium启动了,然后看appium的日志,发现时重签名时sign.jar报异常了,想到测试机是装的解压版的jdk1.6, 有可能是jdk版本引起的(appium官网建议是1.7版本),考虑到项目上其他工具的稳定性,就没有升级。同时,很多人建议通过命令形式启动appium,而不建议使用app GUI。
b,UIautomatorViewer,这个也是识别android元素的,昨天在启动后,总是报Error while obtaining UI hierarchy错。今天重设java_home后就可以正常识别,也有可能是昨天关机,然后今天重新开机后解决的。
总之,手机自动化的测试相比pc端自动化的测试,配置起来还是要稍微麻烦一些的,建议第一次搭建环境的同学还是严格按照官网的要求一步步的去搭建。
补充:
如果使用模拟器测试,安装模拟器后需要在设置里指定你的android SDK路径,不然在执行脚本时检测不到你的模拟器。