【发布时间】:2015-08-18 09:57:47
【问题描述】:
我想为我的应用运行 Kiwi 测试,但我对 Jenkins 还很陌生,所以我可能错过了一些东西。
我在运行 Jekins 的 Mac 上安装了 iOS-sim。我运行$ ios-sim --version 只是为了确保它已安装。
在我的测试目标构建阶段的项目中,我添加了这个脚本:
#!/bin/sh
# Launch application using ios-sim and set up environment to inject test bundle into application
# Source: http://stackoverflow.com/a/12682617/504494
if [ "$RUN_APPLICATION_TESTS_WITH_IOS_SIM" = "YES" ]; then
test_bundle_path="$BUILT_PRODUCTS_DIR/$PRODUCT_NAME.$WRAPPER_EXTENSION"
environment_args="--setenv DYLD_INSERT_LIBRARIES=/../../Library/PrivateFrameworks/IDEBundleInjection.framework/IDEBundleInjection --setenv XCInjectBundle=$test_bundle_path --setenv XCInjectBundleInto=$TEST_HOST"
ios-sim launch $(dirname $TEST_HOST) $environment_args --args -SenTest All $test_bundle_path
echo "Finished running tests with ios-sim"
else
"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests"
fi
我的应用和测试方案都是共享的。
每次我使用以下 shell 脚本运行 Jenkins 作业时:
xcodebuild -sdk iPhoneSimulator -workspace path/to/my/app/AdminPanel.xcworkspace -scheme AdminPanelTests -configuration Debug RUN_APPLICATION_TESTS_WITH_IOS_SIM=YES ONLY_ACTIVE_ARCH=NO clean build
即使我的测试应该失败,我也得到了一份成功的工作,当我检查日志时,就在它结束之前我有
/Users/jenkins/Library/Developer/Xcode/DerivedData/AdminPanel-gbjokymklhdmkhfglybgrvrgrcnm/Build/Intermediates/AdminPanel.build/Debug-iphonesimulator/AdminPanelTests.build/Script-73BDE2F11B7B798D009339E9.sh:第11行:ios-sim:命令没找到
所以基本上它甚至不会启动应用程序
【问题讨论】: