#8 楼 @vigossjjj 好,期待你的帖子。
1、iOS 自动化测试是否必须要有 app 的源代码?
可以不需要源码,但必须有使用 development 证书打包的 ipa/app 文件以及你的机器安装有对应的开发者证书。简单地说,即使没有源码,你也需要有完整的、拿到源码也能直接做打包的开发环境。
2、我在终端通过:appium -U xxxxxxxxxxxxxxxx --app com.when.coco,的命令,启动 appium 服务后,脚本中还需要再指明测试设备的型号和 iOS 版本吗?
需要。关于 appium 的配置参数详情请看 https://github.com/appium/appium/blob/master/docs/cn/writing-running-appium/caps.cn.md 和 https://github.com/appium/appium/blob/master/docs/cn/writing-running-appium/server-args.cn.md
感谢分享!
资历尚浅,纯粹说一下我的个人理解:
我目前看到(通过书上或者各种资讯)的测试能让别人觉得有产出的案例基本都是:
1、你沟通能力好,能表达出你发现了一些别人觉得很难发现,但严重程度又高的 bug(注意:是表达出!)
2、你和开发有很好的沟通,能帮助开发提高效率(如 daily build 、单测,尽快发现代码 broken )
3、你能做开发干不了的、但必须要干的活,而且这个活不是随便一个人都能干的,如各种专项测试。
从公司角度,你完成本职工作就是创造了价值(这也是公司雇用你的原因)
从其他人的角度,你完成本职工作没有创造价值,因为这是理所当然的,而且你做的事情在他们看来没啥技术含量。
就像你不会觉得公司的 HR 创造了价值一样,测试如果只是执行了应该执行的测试那么他们不会觉得你创造了价值。只有你当领导了,你才会感觉到 HR 的存在,只有 HR 能够帮到你,你才会觉得 HR 创造了价值。
#3 楼 @skillgirl 麻烦在帖子名称前面加上【已解决】并在正文附上解决方案吧。这样方便后面的人了解到这个问题已解决。
#8 楼 @lihuazhang 好,回去后升级一下。
第三方 webview 是指类似微信里面内嵌基于 QQ 浏览器内核的 webview 这种?
对于这种 webview ,你可以试试用 selendroid 。
Appium 获取 context 使用的是 adb shell cat /proc/net/unix
,然后通过分析里面的内容实现的。相关代码为:
https://github.com/appium/appium/blob/6dd575948220725b897f89775b97c4e1ab8fc28b/lib/devices/android/android-hybrid.js(里面的 androidHybrid.listWebviews
方法)
而 selendroid 是通过遍历 Hierarchy 结构来找 webview 的(WebView 这个 class 的实例)。相关代码:
https://github.com/selendroid/selendroid/blob/acdd467f001d0afec6278a6f160775bce62d79e3/selendroid-server/src/main/java/io/selendroid/server/model/internal/WebViewHandleMapper.java(里面的 findWebViews
方法)
#6 楼 @vigossjjj 求分享如何对打包好的 ipa 进行证书替换。需要应用源码吗?
按照我目前了解,打包时的 provision profile 里面绑定了 证书、udid、app id 等信息。ad-hoc 或者 in-houce 一般用 distribution 证书,而 appium 需要的是 developer 证书。两个证书不一样,所以打出来的 provision profile 不一样,要改 ipa 的证书只能重新 build 。
:thumbsup: 收藏了。
在 mac safari 8.0.5 (10600.5.17) 测试过,没有问题。微信可以通过扫二维码打开网页。
你确定打包的 ipa 和打包的 app 使用的配置是一样的?
你用什么打包 ipa 的?把步骤/命令贴上来。
好吧,貌似 appium 对 opera 的支持是烂尾了:https://github.com/appium/appium/pull/3819
你先试试上面的示例代码吧。不行的话脱离 appium 直接跑 operadriver 。
#11 楼 @charles opera 貌似可以的,现在新的 opera 的内核和 chrome 差不多。你试试这个:
Opera version 26 and newer:https://github.com/operasoftware/operachromiumdriver
里面的示例代码有 appium 的,所以 appium 应该可以做。
#3 楼 @test20150331 为了保持规范,我们是先更新完格式再回答问题。
请先更新格式。
代码请使用
代码块
先了解怎么用 mac 和 xcode 吧。没有这些基础你直接看自动化肯定看不懂。
#5 楼 @chenhengjie123 那个研究的人没找到解决方案。。。
为何要用移动端 firefox?很少人会用这个啊?测兼容性的话 uc 更流行。