使用ios-sim对Jenkins进行Kiwi测试

时间:2015-08-18 09:57:47

标签: ios jenkins xcode6 kiwi

我想为我的应用程序运行 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:line 11:ios-sim:command找不到

所以基本上它甚至没有启动应用程序

2 个答案:

答案 0 :(得分:0)

现在可以使用普通xcodebuild从命令行运行应用程序测试而无需任何额外工作。假设您有一个新项目,您已添加Kiwi,您可以运行:

xcodebuild test

或者,如果您正在使用工作区:

xcodebuild test -workspace MyWorkspace.xcworkspace -scheme MyProj

答案 1 :(得分:0)

问题是路径,我必须在运行构建阶段脚本之前将/ usr / local / bin /添加到PATH变量。

export PATH=$PATH:/usr/local/bin/

如果遇到此问题,请始终检查Xcode运行脚本的路径。