我尝试使用ios-sim使用此处描述的方法从我的CI启动测试:https://confluence.atlassian.com/display/BAMBOO/Xcode,而不是SenTest
我在XCTest
使用--args -SenTest All
我的应用程序,所以最后一个参数不应该是
-args -XCTest All
但是类似
--args -XCTest -test All
如果我使用这样的参数,则不会执行所有测试。如何使用XCtest指定执行所有测试?如果我使用
ios-sim launch Target.app --devicetypeid 'com.apple.CoreSimulator.SimDeviceType.iPhone-5s, 8.1' --setenv DYLD_INSERT_LIBRARIES="/../../Library/PrivateFrameworks/IDEBundleInjection.framework/IDEBundleInjection" --setenv XCInjectBundle="UnitTests.xctest" --setenv XCInjectBundleInto="Target.app/Target" --args -XCTest All "UnitTests.xctest"
没有执行任何测试。完整的启动命令:
{{1}}
答案 0 :(得分:1)
2分:
首先,这可能是失败的原因是因为你的DYLD_INSERT_LIBRARIES错了。你应该使用“../../Library/PrivateFrameworks/IDEBund leInjection.framework / IDEBundleInjection“而不是”/../../Library/PrivateFrameworks/IDEBund leInjection.framework / IDEBundleInjection“
其次,从Xcode 6开始,支持的做法是使用simctl:
SIMCTL_CHILD_DYLD_INSERT_LIBRARIES="../../Library/PrivateFrameworks/IDEBundleInjection.framework/IDEBundleInjection"
SIMCTL_CHILD_XCInjectBundleInto="Target.app/Target"
SIMCTL_CHILD_XCInjectBundle="UnitTests.xctest"
xcrun simctl launch [device udid or "booted"] com.mycompany.myapp -XCTest All "UnitTests.xctest"