有哪些用于测试移动网络应用程序的工具?
Selenium 2 提供 iPhone 和 Android 测试。
它们是实验性 的——适用于 iPhone和Android。
有许多工具可用于测试移动应用程序:
a) Robotium b) Uiautomator c) Espresso d) Appium e) Calabash
但我的经验 - 我可以建议你Appium是 Android 和 iOS 移动测试的最佳工具。我从过去 6 个月开始在我的组织中使用 Appium,这非常好。
使用Appium的主要优点是-
- 跨平台
- 后端是 Selenium,因此您将获得所有 selenium 功能
- 能够测试iOS和Android
- 持续集成支持
- 不需要访问您的源代码或库。您正在测试您将实际发货的产品。
- 支持多种框架。
- 支持混合、本机和 Web 应用程序的自动化。
- 开源(免费)
- 可以通过 appium server 运行应用,无需操作应用。
- 无需源代码(与机器人不同)
- CI 与 Jenkins、saucelabs 兼容(从我的经验来看)
- 能够在硒网格上运行。
- 尽管自动化某些应用程序,但不需要 APK 即可使用
Appium也有几个缺点:
对于 Android,不支持Android API 级别 < 17。这意味着您要使用 Android v-4.2 或更高版本。
我个人的经验是测试 iOS 设备,所以我只能参考这些。您的问题分为三个独立的部分,因此我将依次回答每个部分。
我正在考虑 iPhone/iPad/Android/BB 的 Firebug,它可以真正提供对标记/脚本的更多见解。
通过在手机上启用“开发”模式,这在 iOS6 中得到了支持。在设置 > Safari > 高级下,您需要将 Web Inspector 设置为打开。然后,您可以将手机连接到您的 mac,打开 safari,您通过“开发”菜单访问的网络检查器将显示允许您拥有与 firebug 类似的功能。
即使在模拟器/设备上进行测试,也很难真正模拟移动浏览器的精确渲染。
这种说法是不正确的。当您在设备上进行测试时,根据定义,它必须是精确的渲染。在 iOS 模拟器中,您正在运行在设备上运行的确切代码,并且除了视网膜显示之外,渲染也是 100% 准确的。
我知道 Safari 和 Firefox 等浏览器可以通过更改用户代理来模拟它,但这并不是对实际移动浏览器的真正模拟。
那是正确的。Firefox 不使用 Webkit 作为其渲染引擎,因此更改用户代理不会显示它在移动设备上的外观。虽然其他基于 Webkit 的浏览器(Safari 和 Chrome)也是如此,但它们通常非常接近。然而,我个人会使用模拟器。(在没有 iOS 模拟器的 AppStore 出现之前,这不是一个可行的选择,我们都在开发 iPhone“网络应用程序”。)
"ShootMe"
(Screen Grabber) 允许您截取设备的屏幕截图,还可以进行高达 30 fps 的截屏
"Log Collector"
收集设备日志并使用您选择的方法(电子邮件、消息传递等)将其发送给开发人员。
在测试移动 Web 应用程序时,这两者都是必不可少的,并且可以在 Andriod 市场中找到。