开发者

SenTestCase in Xcode 3.2 and XCBuildLogCommandInvocationSection Errors

开发者 https://www.devze.com 2023-01-11 23:19 出处:网络
I have a set of SenTestCase that are causing issues in XCode 3.2.4. When attempting to compile (with a ve开发者_如何学Pythonry basic STFail(@"");) the following compiler errors occur:

I have a set of SenTestCase that are causing issues in XCode 3.2.4. When attempting to compile (with a ve开发者_如何学Pythonry basic STFail(@"");) the following compiler errors occur:

An internal error occurred when handling command output: -

[XCBuildLogCommandInvocationSectionRecorder endMarker]:

unrecognized selector sent to instance

An internal error occurred when handling command output: -

[XCBuildLogCommandInvocationSection setTestsPassedString:]:

unrecognized selector sent to instance

I've included the SenTestkingKit.framework from '/Developer/Library/Frameworks' and just created by target by 'Targets > Add > New Target > Cocoa Touch > Unit Test Bundle'. Any ideas? Thanks!


It seems to be a regression with some part of the reporting code not respecting timezone issues. The output is tagged as ending before it began, so gets very confused and chokes.

One work-around, that I found somewhere on Google, is to change the Run Script stage of the target.

Change

"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests" 

to

"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests" 1> /tmp/RunUnitTests.out 

It’s working round the issue, rather than solving it, but does work.


I had the same issue when developing an iPad app. Try changing the Base SDK of your test target from iPhone Device 3.2 to iPhone Device 4.0.


I had the same problem with xcode 3.2.3 and iPad. This one helps me to solve it:

Project -> Edit Project Settings -> Build -> Base SDK = iPhone Device 4.0
Project -> Edit Project Settings -> Build -> iPhone OS Deployment Target = iPhone OS 3.2


This appears to be fixed (finally!) in the 4.2 SDK.

0

精彩评论

暂无评论...
验证码 换一张
取 消