对 xpath 支持不是很好,你还是直接用 name 或者 tagName 查吧。。然后有多个的话,就试试到底是第几个。。。。
#2 楼 @meimeiyuyun 你连了多台设备?或者还启动了模拟器么? 看报错是它试图启动两个 session 然后报错了
说已经启动了一个 session 了,这时候我一般是强制关闭以后重新开下
#3 楼 @seveniruby 对,就看 ROI 是否是在一个合理的范围
#15 楼 @meimeiyuyun 这说明启动成功,正常情况都是看到这句话,我当时也为此困扰半天
ui 要变,肯定对代码有影响,因为开发者在对 ui 结构上做大的改动时,对于元素的命名继续沿用以前的可能性很小。而且对于元素的行为操作也可能有变化,以前可能是是点击,之后改成长按。所以,经常会有改动的页面也好,app 也好,非常不适合用自动化来进行测试,有点得不偿失。自动化更适合那些很基础的功能测试,或者重复性很高的测试。
滑动没问题,可能在某些设备上滑动虽然成功了,但是会报错,按照 1l 说的,加个 try 就成。
双击没试过。。。话说双击的方法是哪个?
#13 楼 @seveniruby
确实不支持。。。
#11 楼 @seveniruby 试过了,报错说不支持 SetValue 这个方法。。。。。
#9 楼 @seveniruby 是这样的。但你的 sendkeys 里是怎么写的?比如 sendkeys("你好"),这样就不行,但如果我用 sendkeys("nihao"),这样是可以打,但是最后选词那必须要点击下,或者最后加个空格。但这。。。。。太不靠谱了
#7 楼 @shery_zhang2012 我是发现连中文都输入不了,也不报错,但是实际上在输入框根本没任何输入任何文字
#2 楼 @lihuazhang WebDriver augmentedDriver = new Augmenter().augment(driver); 这句话执行的时候就报错了,现在用 mobile: localScreenshot 的方法能截图了
#1 楼 @seveniruby py 的没问题,就是 java 按照建议的方法没法截图
#9 楼 @vigossjjj 通过 sendkeys 最终也是帮你把值通过这个方法送出去
#5 楼 @shery_zhang2012 恩,已经好了,跑起来了,不过 4.4 的机器输入很费劲。。。刚能保证英文和空格输入没问题
#6 楼 @seveniruby adb shell input text 你好 这样对吧,但是我试验了下,也不行,很怀疑是 4.4 导致的,明天找台 4.2 的机器看看
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("device","Android");
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
capabilities.setCapability(CapabilityType.VERSION, "4.2");
capabilities.setCapability(CapabilityType.PLATFORM, "MAC");
capabilities.setCapability("app-package", "com.your.package.name");
capabilities.setCapability("app-activity", ".MainActivity");
driver = new SwipeableWebDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
把 apk 文件相关的都注释就好了
#4 楼 @lihuazhang 但我用的是亲儿子啊。。。用自带的系统输入法也有问题。。。而且空格都输入不了
#2 楼 @lihuazhang 场景很简单,就是在一个输入框输入中文.比如 we.sendkeys("你好") 在执行的时候就不会输入任何值,而且我发现用系统自带的键盘输入英文也有问题,最后用谷歌拼音输入法的英文输入才解决,我用的是 n4 刚升级到 4.4。不知道是不是因为这个导致的
追加个问题,输入空格貌似也需要特殊处理??
#1 楼 @lihuazhang 看了,服务已经起来了,但我就是不知道这算不算配置好了。因为我看上面说还有个 4724 端口会起来,不过我看这个端口是 free 状态,是说必须跑起来测试才会占用么?