答案是:
3. els[0].find_element_by_class_name与driver.find_element_by_class_name,实际是一样的效果
两年多,和我差不多啊,我的阅历果然太少了。
好期待!
找到这个:
https://github.com/appium/appium/issues/5107
看起来是 app 自身问题。
你打开 iOS log 看看系统 Log 里面有没有什么特别的 log ?如果有,那估计确实是 app 的问题了,恭喜你找到一个 crash issue 。
#56 楼 @chenhengjie123 Sorry,发了才看到你的回复。此贴就此打住吧。
#24 楼 @anonymous 我客观点回答你的几个问题吧:
为什么测试行业没有一本书或者一系列书去更详细的讲解测试,有的是泛泛而谈,有的是博客里自己的零散的心得。
讲解测试的书是有的,经典书籍也是有的,例如《软件测试》(ISBN: 9787111185260)《软件测试的艺术》(ISBN: 9787111376606)。至于其他公司是怎么做测试的,有《Google 测试之道》(ISBN: 9787115330246),《微软的测试之道》(ISBN: 9787111277538)。只是像你例子里的很具体的工具书籍基本没有。
测试行业是发展好多年了,但移动测试发展也没几年啊(iPhone 2007 年出来,到现在也不过 10 年)。你例子里举的 adb ,monkeyRunner 出来也没多少年,而且他们深度上和应用上与其他工具(如 Java 的 Spring)之间差别太大了,一个是常用的基本工具,看完官方文档基本会用。一个是设计良好的大型框架,会用和用精完全两码事。拿 adb 这些工具和 Java 这门语言,或者 一些经典工具比较不是太恰当。
PS:你想要系统了解同时也造福行业的话,可以自己通过阅读这些零散的心得,然后把它们组织起来,在 gitbook 或者什么地方把它们写成书,造福大家。
3.你怎么知道我不愿意学习?我买书是为了什么?就拿 Appium,我有去看官方文档,有看 API,有在 testerhome 上学习基础,然后就在想有没有一本书可以具体的讲解用在项目里。到网上去找书,买了上面说的三本,然后发现讲 Appium 的就那么点。我并不是没有自理能力,只是想更深入学习。
这类书我想短期内不会有,以后也不一定会很深入地讲。一方面具体用在项目中的东西大多通用性不会十分强,写成书后菜鸟还是没办法按照书中的说明把它用起来的,毕竟不同项目间差异还是不小的;另一方面 Appium 在国内流行也是这 1~2 年的事情,估计还没有什么企业/人敢说自己在项目中的实践强大到可以出书了吧。之前倒是听说淘测试有在用,而且还对 appium 进行了一些改造以符合自己的需要,但具体如何我就不大清楚了。
我有看 Android 官方文档啊,我只是在想学习的方式不一定是只看官方的,我是一个习惯去买书学习的人。请问学习的方式一定要 先源码吗?这么说我又要开始学 Python 了?我一个 java 都只是基础的人又 tmd 开始学 python 了?
我在 IT 技术方面的学习路线一般是:
PS:我也喜欢看纸质书,不过现状是任何纸质书出版时里面的内容至少是半年前的了,在移动测试这个领域半年时间意味着可能只剩下 80% 左右的内容还是可以用起来的了,所以里面还是会有坑的。而且那些 “实战”、“实例” 的书籍本来就不是给初学者看的,初学者看了很容易在流沙上面筑高楼,觉得自己懂得里面的例子就学会这个东西了,结果一上项目傻眼了,这些情况和书里说的不一样啊!
2.其次你一上来就让我看源代码,请问源代码很容易吗?是 1+1=2 吗?你现在是 NBA 职业球员,就以为一个小学生就可以直接去打 NBA 了?Appium 的源码很容易懂吗,Node.js 是一个 java 还在基础阶段的人轻易能学会的?我看你们的商业培训也在从基础讲起,并没有从源码讲起?
源代码确实不那么容易,但 Monkey 的源码没有你想象中那么难,而且 Monkey 源码分析网上是有系列文章的,你可以去看看,辅助理解。至于 Appium 是比较难(编程语言上有 Java,Javascript,并且需要熟知 UIAutomator API,UIAutomation API,Xcode command line tool),但对于只想了解基础的初学者来说 Appium 的文档、sample-code、各个 client 自己的文档以及 webdriver api 的文档加起来足够入门,甚至熟练使用了。精通的话源码是不二之选。
据我所知,学编程的人也是差不多的路线:刚开始通过各种入门书只知道怎么用官方的 library ,然后通过多用和看官方文档熟练掌握,最后学习源码。
最后我想说的时,你说到的一些问题确实是问题,然而单纯把这些问题在一个公众平台上抛出来,并且带有比较强烈的指责态度,你指望能得到怎样的回复呢?换位思考一下,你见到这样的帖子,你会回复什么?另外,这些问题如果不仅仅是抛出来,而是提出后组织大家把这些书籍资料整理出来,造福未来的新人,收到的效果是否会截然不同?
测试行业是需要改变,但是单纯提问题,叹可悲是改变不了行业的。
屏蔽理由:请参考排版说明,代码及日志使用代码块。
那个。。。能否按照排版规范优化一下排版?现在的代码没用代码块看起来有点乱。。。
估计是你的表情符号导致 xml 格式被破坏了。
错误信息说的是解析 xml 时出错,xml 是无效文件。
另外,请遵守论坛排版规范,代码使用代码块:
代码块
这个不是 bug 啊,设计就是如此啊。根据 text 来定位,当然找到第一个符合的就返回啊。
你这个需求不要用 byText,改用 byDescription 或者找别的定位策略吧。
已收藏,挂机下载中
帮顶。
工作再过一年才达标了。。。
建议你先试试直接用 UIAutomation 执行 target.dragFromToForDuration({x:"333", y:"497"}, {x:"50", y:"497"}, "1")
这段代码。
印象中 iOS 7.0+ 的 Simulator 有个在 scroll view 中进行滑动手势方面的 bug :
https://github.com/appium/appium/blob/master/docs/cn/writing-running-appium/touch-actions.cn.md
如果直接用 UIAutomation 也不行那就用真机试试,如果还是不行那就要看看是否移动的距离不够了。
:plus1:
好文!
提个小问题,markdown 的粗体格式在前面两个星号前必须有一个空格,否则会认为你就是想显示星号。同时一些序号格式要求和其他格式之间有一个空行。我看到文中有两个地方出现了 markdown 的字符了。
另外,麻烦按照排版说明要求:
麻烦添加一下头像。
另外,麻烦说一下具体的薪酬水平范围。
没看懂 该工具捕获的却是之前 UI 上的控件 这句话啥意思。。。
#1 楼 @app_testing 这个方法是旧方法,现在已经作废了。
337 = 98+289
717 = 98+289+380
你查下 Java-client 的文档,看下里面 moveTo 的坐标是相对于前一个点的坐标还是绝对坐标?
没有直接的 api 。
可以通过 adb 来控制 Unlock.apk 来做(Unlock.apk 是 appium 运行 session 时自动装上去的)。 adb 命令为:
adb shell am start -n io.appium.unlock/.Unlock && sleep 5
不过更建议从源头解决,让手机永不锁屏。三星只是在系统设置界面里没有给永不锁屏的选项,并不是完全无法永不锁屏。