【发布时间】:2013-08-29 18:16:07
【问题描述】:
我正在设置 iOS 自动构建/测试流程。我用过的一些工具是,
- Bamboo CI(如 Jenkins)
- 葫芦-ios
- 一些自酿的 bash 来包装结帐/构建/测试流程
- 只有模拟器运行测试,暂时没有真机
- 专用于自动构建/测试的 Mac mini
为了使复杂的测试用例并行运行,需要多个模拟器同时运行。我使用this tool 启用了多个模拟器(默认情况下iOS 模拟器不允许多个实例),现在我可以在不同用户的不同VNC 控制台中运行它们到我的Mac mini。
然后我遇到了另一个问题,Calabash iOS 框架似乎硬编码了端口(37265)以供外部连接(黄瓜客户端库),所以我仍然无法运行并发 Calabash 测试,因为不同的模拟器实例会在同一个端口 127.0 上发生冲突.0.1:37265.
但是,calabash-cucumber 允许指定要连接的测试设备(或模拟器)的 ip:port,如果我可以预先创建监听不同 ip 的模拟器,则显式加载应用程序并告诉 cucumber 连接到指定的 ip:port ,那么并发测试的想法仍然有效。但似乎 iOS 模拟器以某种方式被硬编码为听 127.0.0.1 接口,对吧?知道如何告诉模拟器将自己桥接到指定的网络接口吗?如果可行,只需设置多个测试用户 + 多个网络接口即可在 iOS 模拟器上进行并行测试。
但如果我做错了,也请告诉我。谢谢。
【问题讨论】:
标签: ios continuous-integration ios-simulator calabash