美文网首页GitHub 中文社区
【翻译】在 iOS 真机上运行 Appium

【翻译】在 iOS 真机上运行 Appium

作者: thanksdanny | 来源:发表于2017-03-26 21:31 被阅读385次

    在 iOS 真机上运行 Appium

    Appium 已支持真机的测试。

    在开始真机测试前,你需要关注如下信息:

    • 一个Apple Developer ID 和一个可以使用的开发账号去配置分发证书以及配置文件。
    • 一台 iPad 或者 iPhone。确保在 Xcode 中已被设置为开发状态。获取更多信息请查看 this article
    • 一个被测应用的已签名 .ipa 包,或者有源码的话可以自行构建。
    • 一台已装 Xcode 和 Xcode Command Line Developer Tools 的 Mac。

    配置文件

    要在真机运行,有效的 iOS 开发分发证书和配置文件都是必须的。还要对你的应用进行签名。你可以在 Apple documentation 找到更多相关信息。

    Appium 会使用 Fruitstrap 去安装你的应用,但通常更容易的方式是先使用Xcode 去原装你的应用,来确保他们都是没问题的(查看 iOS deploy 获取更多信息 )

    在 Xcode 8(包含 iOS 10)下使用 XCUITest 进行测试

    这功能现在依赖 idevicesyslog 进行记录,且使用 iProxy 进行端口转发,这两个部分工具都包含在 libimobiledevice 其中。可以使用 Homebrew 去安装它,

    brew install libimobiledevice
    

    另外,日志记录同样可以使 deviceconsole 工具完成,相关信息可以访问这里查看。当你决定使用哪个工具后,使用 realDeviceLogger 作为环境配置,最终程序的日志记录在设置的路径当中。

    使用 Appium 运行你的测试

    一旦你的设备和应用都已配置,你可以通过命令行添加 -U 或者 --udid 标签去指定目标设备去运行你的测试,然后再传给服务器。在环境变量中的不同设置也会有不同的效果,将 udid 设置为设备的 udid 也能指定设备。也可通过如下方式指定被测应用,添加 bundle ID(如果应用已安装在设备上),或者通过 --app 标识去指定.ipa 或者 .apk 被测包的路径,又再有就是在环境变量中修改 app 的值。

    服务器参数

    举个例子,在你启动你的应用之前,希望 Appium 直接使用一个指定的 UDID,那你可以使用如下命令:

    appium -U <udid> --app <path or bundle>
    

    这会启动 Appium 并运行指定的设备去测试你的应用。

    更多相关的参数请参考 Appium server arguments 获取更多详细的信息。

    环境配置

    在你的测试中只要包含以下两项环境配置,你就可以在指定设备上启动你的应用:

    • app
    • udid

    更多相关的请参考 Appium server capabilities获取更多详细的信息。

    故障排查的思路

    1. 确保 UDID 是无误的,可以通过 Xcode Organizer 或者 iTunew 查看。留意 UDID 是很长的字符串(20+ 字符)。
    2. 确保你可以在模拟器运行你的测试。
    3. 重复确认 Instrumens 是否启动了你的自动化。
    4. 确保 Instruments 不在运行状态中。
    5. 确保 UI Automation 在你的设备中是可执行状态。设置 -> 开发者 -> 使用 UI Automation

    在 Android 真机上运行 Appium

    谢天谢地!在 Android 真机上运行是没有额外需要注意的地方:在模拟器上能运行的测试同样适用在真机上。确保你的设备可以链接 ADB 和开启开发者模式。在真机上测试 Chrome,你只需负责确认 Chrome 已安装上一个合适的版本。

    同样,你大概会想在设置中确保“验证的应用”是在不可用状态亦或是未检查状态,否则他可以防止一些 Appium 的辅助应用自己启动,已经检查他们是否正常运行。

    相关文章

      网友评论

        本文标题:【翻译】在 iOS 真机上运行 Appium

        本文链接:https://www.haomeiwen.com/subject/kdzkottx.html