我们无法在真实的iPhone上运行部署在Xamarin应用上的Calabash测试。我们已经尝试从以下网址下载示例应用程序:http://developer.xamarin.com/guides/testcloud/calabash/introduction-to-calabash/。当部署到模拟器时可以运行,但是在尝试运行在真实设备上时则无法成功。我们可以在设备上安装和运行该应用程序,但是无法将其与Calabash配合使用。我们尝试运行的命令为:
上述代码的输出为:
APP_BUNDLE_PATH=~/Path/to/CreditCardValidation-Calabash/CreditCardValidation.iOS/bin/iPhone/Debug/CreditCardValidationiOS-1.0.ipa DEBUG=1 BUNDLE_ID=com.xamarin.calabash.example.creditcardvalidation DEVICE_TARGET=uuid-of-device DEVICE_ENDPOINT=http://ip.of.phone:37265 RESET_BETWEEN_SCENARIOS=1 cucumber
上述代码的输出为:
Using the iOS profile...
Feature: Navigation feature
@ios_only
Scenario: A user can navigate between each journey stage # features/navigation.feature:4
INFO: Using uia strategy: 'preferences'
Preparation took 0.087536 seconds
{
:app => "<snip>",
:args => [],
:bundle_dir_or_bundle_id => "<snip>",
:bundle_id => "<snip>",
:device => "<snip>",
:device_target => "<device-uuid>",
:launch_method => :instruments,
:launch_retries => 5,
:log_file => "/var/folders/w1/55hzwq792vqdrv8bgw69yvy40000gp/T/run_loop20141107-1711-1whcn00/run_loop.out",
:no_launch => false,
:no_stop => false,
:reset => true,
:results_dir => "/var/folders/w1/55hzwq792vqdrv8bgw69yvy40000gp/T/run_loop20141107-1711-1whcn00",
:results_dir_trace => "/var/folders/w1/55hzwq792vqdrv8bgw69yvy40000gp/T/run_loop20141107-1711-1whcn00/trace",
:script => "/var/folders/w1/55hzwq792vqdrv8bgw69yvy40000gp/T/run_loop20141107-1711-1whcn00/_run_loop.js",
:sdk_version => nil,
:udid => "<device-uuid>",
:uia_strategy => :preferences,
:xcode => "6.0.1",
:xcode_path => "/Applications/Xcode.app/Contents/Developer"
}
### Starting on <device-uuid> App: <snip> ###
2014-11-07 11:21:38 +0000 xcrun instruments -w "<device-uuid>" -D "/var/folders/w1/55hzwq792vqdrv8bgw69yvy40000gp/T/run_loop20141107-1711-1whcn00/trace" -t "Automation" "<snip>" -e UIARESULTSPATH /var/folders/w1/55hzwq792vqdrv8bgw69yvy40000gp/T/run_loop20141107-1711-1whcn00 -e UIASCRIPT /var/folders/w1/55hzwq792vqdrv8bgw69yvy40000gp/T/run_loop20141107-1711-1whcn00/_run_loop.js &> /var/folders/w1/55hzwq792vqdrv8bgw69yvy40000gp/T/run_loop20141107-1711-1whcn00/run_loop.out
Failed to launch.
execution expired: execution expired
Running `curl http://ip.of.phone:37265/version` returns the expected json.