capabilities.setCapability("deviceName", deviceName);
capabilities.setCapability("platformVersion", platformVersion);
capabilities.setCapability("platformName", platformName);
capabilities.setCapability("app", appPath);
capabilities.setCapability("appPackage", appPackage);
capabilities.setCapability("appActivity", appActivity);
把 app 的路径加上
capabilities.setCapability("app", appPath);
Selendroid 需要将重新打包被测应用,所以要设置被测 app 在本地的目录
另外,刚启动时显示的 platformverison 是指 PC 上安装的 sdk 版本,是我理解错了,和那个没有关系。
html 代码中超链接的 href 属性为 #,那么看来是通过 js 绑定事件来做业务动作,而不是跳转,那么首先要确认的就是 js 绑定的事件是否为 click 事件,因为在移动 web 应用中有些 js 是专为移动开发的,绑定的事件可能是触摸事件
从贴出的 log 和 code 来看 有两个疑问
但代码中的 deviceName 为
148904d2
ERROR: debug: Non-default server args: {"address":"127.0.0.1","logNoColors":true,"platformName":"Android","platformVersion":"19","automationName":"Appium"}
appium 启动时,就已经指定了 platformVersion 为 19
4723
可以用,AppiumDriver 继承了 remotedriver,remotedriver 实现了 webdriver 接口
有 2 点猜测:
#14 楼 @luckystaff 这个 apk 是用 phonegap 打包出来的,其实只是在其中加了一个跳转链接访问指定地址而已
apk 已经上传到:http://pan.baidu.com/s/1nt9KPKl
关于 phonegap 可以去查查资料,跨平台的混合 app 解决方案
'''Failed to find provider info for com.tencent.mm.coolassist.debugprovider'''
这个报错应该就是原因了吧
http://www.2cto.com/Article/201311/254789.html
上面这篇文章中,可以试试使用 resign 工具将微信重新打包,然后使用,想来也应该是腾讯为了安全做的一些手段吧
最好能分析下 logcat 日志,看看是什么错误
#12 楼 @adfghzhang 是的,如果是 wap 网页,就用 wap 浏览器去浏览,这里推荐用 chrome 或者火狐上一个在线 wap 浏览的地址。例如下面这个:http://www.pctowap.com/
这样用 chrome 的开发者工具(审查元素)的功能就能获取到元素的属性
如果是内网的话,需要使用 chrome(需要开发版)或者遨游浏览器模拟手机模式去访问,推荐用遨游
可以看这个资料:http://www.iqshw.com/qqjiqiao/20140214/71831.html
另外要注意的是像百度搜索这种,在用 2G 网络、3G 网络和 wifi 下的页面会有不同,需要注意,如果是自己内部的项目有必要的话也要注意
#11 楼 @cdheyue 嗯,不用管。初学的话,最好先看下教程吧
http://testerhome.com/topics/211
http://testerhome.com/topics/1170