[英]Calabash-ios: Run test physical device installed ipa without xcodeproj
我是calabash-ios的新手,有一个虚拟问题是:
我怎么可能在没有安装xpaproj的实际设备上安装了ipa文件(包括calabash框架)运行calabash测试?
问题是我正在执行质量检查,开发人员只给了我ipa文件进行测试,而没有源代码。
更新:通过添加BUNDLE_ID,我可以在控制台和黄瓜中运行ipa文件。 并确保CFNetwork.framework包含在应用程序框架中以建立连接。
但是运行该方案时我遇到了另一个问题:1.运行以下命令时:
DEVICE_ENDPOINT=http://192.168.1.9:37265 NO_LAUNCH=1 BUNDLE_ID=com.example.appname DEVICE_TARGET=UDID cucumber
然后我得到了这个错误:
A JSON text must at least contain two octets! (JSON::ParserError)
features/my_first.feature:8:in `Then I touch "LOG-IN/ CREATE ACCOUNT"'
其他所有步骤均被跳过
然后我运行控制台代码
DEVICE_ENDPOINT=http://192.168.1.9:37265 NO_LAUNCH=1 BUNDLE_ID=com.example.appname DEVICE_TARGET=UDID calabash-ios console
然后我运行server_version我得到了回复,说连接成功。但是当我运行start_test_server_in_background时,我花了很长时间等待,我看到该应用程序的物理设备一直崩溃,并一次又一次启动,直到它停止为:
Unable to start. Make sure you've set APP_BUNDLE_PATH to a build supported by this simulator version
Calabash::Cucumber::Launcher::StartError: Calabash::Cucumber::Launcher::StartError:
"Timed out waiting for UIAutomation run-loop Error while writing to fifo. RunLoop::Fifo::NoReaderConfiguredError.
2015-10-01 10:49:41.634 instruments[15640:10558880] WebKit Threading Violation - initial use of WebKit from a secondary thread.
2015-10-01 10:49:42.574 instruments[15640:10558978] Attempting to change event horizon while disengage
2015-10-01 10:49:42.577 instruments[15640:10558877] Attempting to change event horizon while disengage
Instruments Trace Error : Target failed to run: Permission to debug app
任何人都可以帮忙! 我尝试搜索一些解决方案,但它们几乎在模拟器上出现问题,并且包含xcodeproj。 作为质量检查人员,我没有源代码,只有.ipa文件。 :( 谢谢
您应该设置3个变量:
$ DEVICE_TARGET=<UDID> \
DEVICE_ENDPOINT=http://<ip>:37265 \
BUNDLE_ID=com.example.YourApp cucumber
设备和主机应位于同一网络上。
.ipa必须安装在您的设备上。
您可以在Xcode中通过在“设备管理器”窗口中拖放或使用第三方工具(如ideviceinstaller)(可在Homebrew中使用)进行此操作。
您永远不要设置NO_LAUNCH
。
http://calabashapi.xamarin.com/ios/file.ENVIRONMENT_VARIABLES.html#label-NO_LAUNCH
您还需要启用设备进行开发,并在Settings.app> Developer中打开UIAutomation。
更新针对此问题,我重新编写了“ 在物理设备上测试 Calabash iOS Wiki”页面。 哇,内容太古老了!
只要文件是用calabash构建的,那不是问题。 您只需使用APP_BUNDLE_PATH调用Cucumber,即可将您的.ipa文件放置在任何位置,并且应该全部设置好。
但是您应该意识到,需要构建.ipa以匹配运行测试的目标。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.