【发布时间】:2012-08-30 17:26:02
【问题描述】:
我必须定期测试电影租赁网站的可用性和功能。我写了一个 Windows 程序,它可以根据脚本自动运行 Web 浏览器,所以这个任务基本解决了。现在我必须自动化这个 Web 应用程序的移动版本:一个原生 iOS 应用程序和一个原生 Android 应用程序。
这些应用是封闭源代码,因此不能以任何方式修改。我认为测试应用程序应该部署在测试设备(iPhone、iPad、Galaxy Tab、Galaxy S II)上,但我必须能够远程控制它。我的意思是,我想在测试设备和 PC 之间建立连接,将测试脚本从 PC 上传到设备,运行它们,然后将测试结果下载到 PC。测试脚本应该启动要测试的应用程序,操作其 GUI(填充编辑框、按钮等),并以某种方式跟踪其响应,例如通过分析 GUI(某些 GUI 元素的存在、它们的标题等) 、分析屏幕截图和/或检查 IP 数据包。
我为 Windows 编写了许多类似的测试程序:我使用了 ShellExecute、PostMessage、FindWindow、WinPcap 库等,所以我知道这样的程序应该如何工作。但由于我从来没有为移动操作系统编写过应用程序,我什至不知道是否有适用于 iOS 和 Android 的类似 API 和库。
我想知道从哪里开始,我的意思是,可以使用哪些 SDK 和开发工具来编写这样的应用程序。我也对商业解决方案感兴趣。非常感谢任何帮助。
【问题讨论】:
-
“测试脚本应该启动要测试的应用程序,操作它的 GUI(填充编辑框、按钮等)”对于 iOS 是不可能的(越狱可能是可能的),不确定 Android
-
@MSK 谢谢。这是个坏消息 :( 是否可以在 Mac OS X 上通过模拟器运行 iOS 应用程序,并像桌面应用程序一样自动化它?
-
如果您使用鼠标/键盘宏,我不明白为什么不这样做,对于 android,您可以查看 monkeyrunner developer.android.com/tools/help/monkeyrunner_concepts.html
标签: android ios ui-automation galaxy packet-capture