代码块不要用引用格式……有代码块的格式的,请看页面底部的 markdown 说明。
你删了还得再编译个 jar 文件给它啊。
话说你那个帖子是 1.0.0 的了,现在不一定适用了。
木有权限?貌似 appium 是用类似外部启动的方法来启动你指定的 activity 的。
那你试试不指定 activity 来启动?
两个 activity 都有 log 吗?
你可以用 logcat 看看到底起来的是哪个 activity。我从 appium 的 log 看到就是起来的不是.activity.login.WelcomeActivity
,而且 appium 等待了一段时间后这个 activity 还是没起来,所以才会报错。
#2 楼 @wangcityboy 哦,明白了。
#45 楼 @james88233 appium 既可以测 iOS,也能测 android 的啊。测这两个平台除了一些设置参数不一样大部分一样的。
python 简单是相对于 java,C 而言的。无论学什么,多练都是必须的。如果它简单到一两天就能熟练使用,那么它能做的事情会变得很有限。
入门 python 推荐看看《a byte of python》,网上有免费 pdf
赞!!
个人建议,个人学习记录还是放回你自己博客吧。后面你可以放个链接过来 testerhome。
按照你的发帖速度,我怕会搞到首页大部分帖子都是你的帖子。
你确定.activity.login.WelcomeActivity
是 launcher?
从 log 来看,启动的 activity 是.activity.login.VerifyActivity
,不是.activity.login.WelcomeActivity
。
我猜测.activity.login.WelcomeActivity
是启动引导页,只有首次安装才会出现。
这 log 的长度太。。。
我提取一下关键 log:
2015-03-30 09:36:44:772 - info: [IOS_SYSLOG_ROW ] Mar 30 02:36:44 CareydeMac.local /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/libexec/lsd[10968]: LaunchServices: Failed to set the data protection class for /Users/carey/Library/Developer/CoreSimulator/Devices/117A2222-200A-4899-B449-59A79E4E3CE2/data/tmp/com.apple.IconsCache/com.yy.enterprise.yyvoice_CFBundleIcon[15]
2015-03-30 09:36:45:029 - info: [IOS_SYSLOG_ROW ] Mar 30 02:36:45 CareydeMac.local mediaremoted[10945]: Property list invalid for format: 200 (property lists cannot contain NULL)
2015-03-30 09:36:45:077 - info: [IOS_SYSLOG_ROW ] Mar 30 02:36:45 CareydeMac com.apple.CoreSimulator.SimDevice.117A2222-200A-4899-B449-59A79E4E3CE2.launchd_sim[10938] (UIKitApplication:com.yy.enterprise.yyvoice[0x65ae][10983]): Program specified by service does not contain one of the requested architectures: �\�
2015-03-30 09:36:45:085 - info: [IOS_SYSLOG_ROW ] Mar 30 02:36:45 CareydeMac.local SpringBoard[10951]: Unable to get pid for 'UIKitApplication:com.yy.enterprise.yyvoice[0x65ae]': No such process (err 3)
2015-03-30 09:36:45:092 - info: [IOS_SYSLOG_ROW ] Mar 30 02:36:45 CareydeMac.local SpringBoard[10951]: Unable to delete job with label UIKitApplication:com.yy.enterprise.yyvoice[0x65ae]. Error: Operation now in progress
2015-03-30 09:36:45:092 - info: [IOS_SYSLOG_ROW ] Mar 30 02:36:45 CareydeMac.local SpringBoard[10951]: Application 'UIKitApplication:com.yy.enterprise.yyvoice[0x65ae]' exited for an unknown reason.
2015-03-30 09:36:45:108 - info: [IOS_SYSLOG_ROW ] Mar 30 02:36:45 CareydeMac com.apple.CoreSimulator.SimDevice.117A2222-200A-4899-B449-59A79E4E3CE2.launchd_sim[10938] (UIKitApplication:com.yy.enterprise.yyvoice[0x65ae][10983]): Trampoline was terminated before jumping to service: Killed: 9
根据Program specified by service does not contain one of the requested architectures
找到https://discuss.appium.io/t/appium-v1-3-0-beta1-xcode-6-1-failed-looking-up-pid-of-launched-process/1015
你按照里面的解决方法试试?
找到这个:
https://discuss.appium.io/t/error-waited-20-secs-for-selendroid-server-and-it-never-showed-up/722/12
应该不是 appium 的问题,是 selendroid 的问题。改一下 selendroid 版本吧。
有点奇怪啊,怎么两个都有App is installed!
这个 log?
google 了一下,貌似是ios-deploy
的问题:
https://github.com/phonegap/ios-deploy/issues/11
好文,继续加油!
PS:ll
是一个 alias,它实际执行的就是ls -l
。不过不是每个系统都默认加了这个 alias 的。
你有试过单独用 selendroid 来测吗?
你参考的链接里面的内容貌似已经很旧了(appium 1.2.x 的了)
#3 楼 @weamylady 有点类似。fake server 可以看做是一个挡板。
#43 楼 @james88233 别叫我大师,我还很年轻……
新发现是指什么新发现?最近在学习 appium 源码 +android 开发。
语言的话我主要用 python 啊。我目前做自动化测试主要用 python,写起来比较简单。
我在我的博客里面对文件夹的内容作了更详细的介绍,大家有兴趣可以看一下:http://chjvps.com/blog/?p=758
个人经验,如果是在 E2E 测试中遇到这类 bug,那么环境方面的日志(如网络包记录)会产生很大帮助(网络本身就是 E2E 测试中最不稳定的因素)。同时一定要关注是否有内存泄露!很多时候应用无故 crash 且遇到的前置条件各不相同,都是由于内存泄露到最后被系统强制关闭了。
另外,回忆操作步骤也是很重要的一步。我测试中曾经发现过一个自己以为是偶现的 bug(前面很多个版本都没出现过,而且也没有明确重现步骤,重现概率为千分之一不到),现象是在某个界面进行点击操作,有时候软件会 crash。后面回忆操作时和平时的主要区别是除了手指外,手掌也碰到了屏幕某个区域,最后发现是程序隐藏控件没做好处理,当点击到隐藏控件所在位置时隐藏控件的点击事件被错误地被触发了。开发也说完全想象不了这样的 bug 怎么能被纯手工发现。。。
干货!收藏了!
另外,多语言测试补充一点:当文字长度不一致时,UI 界面是否能正常适配。如果有自动截断,该处使用自动截断是否合适(对于英文 + 中文这类差别很大的多语言这个必测)
受益匪浅。我自己翻译了一下,有兴趣的可以来看看:http://chjvps.com/blog/?p=751