3

我正在尝试使用 Calabash-iOS 进行测试自动化。但我不知道 Xcode 在 Calabash 中的相关性。我下载了 Xcode 4.6.3, Ruby 1.9.3, cucumber 开始。我对如何使用 Xcode 进行自动化感到困惑。我有要测试的应用程序的 ipa 文件。当我浏览时,给出了将葫芦框架放入您要测试的应用程序的步骤。为什么要这样做?Xcode 工具的具体用途是什么?我将使用 iPhone 进行测试,为什么需要 xcode。请解释。

4

3 回答 3

1

Calabash 框架使用私有的 Apple API 来合成触摸事件。

这就是为什么您需要calabash.framework在能够针对应用程序运行您的场景之前将其包含到 .app 包中。没有内置框架的 .ipa 将无法接受呼叫并根据您的场景做出反应。

您需要将 iOS 应用程序和 Xcode 的源代码集成calabash.framework到并构建新的 .app 包。根据setup-xcode-project-cal指令创建带有后缀的单独构建目标(注意该指令,它会影响捆绑包的组织方式)。-force_load "$(SRCROOT)/calabash.framework/calabash" -lstdc++

因此,您将无法获取通常部署到商店的 .ipa 文件,并针对它运行您的 calabash 场景(除非 .ipa 是错误地或故意使用包含的框架构建的)。您可以检查您的 .ipa 天气是否包含框架:此处的说明

于 2013-10-15T13:11:19.223 回答
0

从 iOS 7 开始需要 Xcode,因为 calabash 需要使用 Instruments 启动应用程序(包含在 Xcode.app 包中)。

于 2013-12-11T23:59:18.403 回答
0

calabash.framework 和您的项目之间的链接只是在启动您的应用程序时启动 Calabash iOS 服务器。因此,当您在将用于执行此操作的任何框架中编写代码并运行测试时,此过程将神奇地传达葫芦和您的测试。

参考:教程:在调试配置中链接葫芦

于 2017-10-18T00:45:11.657 回答