基本看懂了你想表达什么。不过既然你想让大家都看明白,麻烦不要直接把结论和代码给出来,附上上下文(代码里的 Intent 是什么、怎么用,从测试的角度分析一下这个简单的应用有哪些测试点)或者源代码(github 地址就好)会好很多。
否则这类学习笔记没必要放到论坛,放在自己博客或者笔记本里就好了。
这帖子干嘛匿名……看到几条重复回复就是为了显示身份的了……
就像前面的人所说,崩溃的话可以做崩溃分析,有很多现成工具的。你用 monkey 的话把 logcat 中对应这个应用的 Log 截下来给开发,基本开发就知道是什么回事了(logcat 一般会包含启动了什么 activity,执行了什么函数,闪退是由于什么 error 等,开发一看基本就知道你到底做过什么操作了)。monkey 自己的操作 log 用处相对来说不是太大。
而且按照你们这样的闪退率,崩溃后自动发送崩溃报告这种功能应该是必须的。
说的不错,质量意识确实是第一位的。
直接在现有用例里面增加一步来调用 adb 删除 apk 的命令满足不了你的需要?
赞!
今晚学习内容就这个了!
具体什么弹出框对象?
我不确定 appium 是否支持使用网络位置作为 app 路径。
你试试用本地绝对路径?
另外,最好把 server 从接到 request(一一>) 到返回 response(<——) 的完整 log 都贴上,更方便看执行了什么步骤
可以看看这里
http://nowherewoman.com/selenium-handle-wait/
我不大清楚 appium 是否实现了 wait,你可以试一下。
好快! 必须赞!
受教了。能坚持 8 年不容易。
我们 testerhome 的微信公众号后面想增加心路历程这类文章,分享一下各位测试人的一些历程和感受。你有兴趣后面继续分享你的历程,然后我们分享到微信公众号中让更多人参考吗?
这和 appium 有什么关系……这是 python 的 unittest 模块的事。。。
找到一个解决方法:http://stackoverflow.com/questions/5387299/python-unittest-testcase-execution-order
最好还是自己写个方法来设置执行顺序。因为 unittest 设计的时候是假设你的用例顺序无关的,上面的解决方法相当于找窍门(毕竟它不是乱序的)。单元测试大部分都是顺序无关的。
#8 楼 @wangcityboy Oh,软件冲突这个确实比较麻烦。
有可能是 ifuse 的依赖库和 fruitstrap 有什么冲突。。。
#6 楼 @wangcityboy 这就奇怪了,我目前没遇见过。
你指定device_id
能装上吗(fruitstrap -b <app> [device_id]
)
实在不行用ios-deploy来装吧。
#4 楼 @wangcityboy 你的 udid 是什么?你用xcodebuild -showsdks
看看输出结果里有没有你插上的设备?
#8 楼 @test20150331 show me your code.
google 了一下,找到如下可能的解决方案:
http://stackoverflow.com/questions/15492406/getting-protocol-failure-error-while-installing-apk-using-adb-command-in-android
http://stackoverflow.com/questions/16554627/adb-protocol-failure-using-install-and-push
你都试试吧。
下次发询问帖麻烦说一下自己曾经找过什么解决方案,尝试后结果如何,以及自己的一些分析。
否则我只能根据 log 搬运 google 结果。。。因为我除了你给的 log 什么都不知道。。。
#4 楼 @test20150331 一个脚本运行在两个设备?就是第一步操作 A 设备,然后第二步操作 B 设备吗?
你开两个 appium:
> appium -p 4723 -bp 2251
> appium -p 4724 -bp 2252
然后在脚本里建立两个 session,appium 的服务器地址分别是localhost:4723
和localhost:4724
,并在 caps 里分别指定两个设备的 udid(否则默认都会用第一个设备)。然后你就可以通过两个 session 分别控制两个设备了。
appium 内部通过某个特殊命令来启动 bootstrap 的(一般在不使用 selendroid 且 session 建立完成的时候启动 bootstrap),里面会有特殊参数告诉 bootstrap 使用哪个端口,你直接用runtest
没有把这个设定端口的参数传给 bootstrap,所以还是用默认端口
#6 楼 @cpfeng0124 好,我也学到新东西了。
麻烦改一下帖子标题和内容,让后面的人能快速知道解决方法。
麻烦附上服务器 log。
你转换 context 后再试试?
你后面是用 runtest 运行的……
-bp 2251
是从 appium server 传到 bootstrap 的啊,你不用 appium server,单独启动 bootstrap 当然用默认端口啦
#2 楼 @lihuazhang 好郁闷为啥 shell 的 dump 能含有 webview 元素,bootstrap 的 dump 却没有…………看来后面要探究一下两者到底有什么不同了。
#48 楼 @james88233 最近没在做。
logcat 如果程序没出错基本不需要看,但出错了你就必须看了。你可以改一下 logcat 的 level,让它不要所有 log 都输出来就好了。