Я следовал этому руководству , чтобы настроить модульное тестирование в моем приложении, когда я немного застрял.
В пуле 8 в этом уроке показано это изображение, чего я и должен ожидать при сборке: alt text http://developer.apple.com/library/ios/documentation/Xcode/Conceptual/iphone_development/art/logic_test_failure_text_editor.jpg
Однако это не то, что я получаю, когда строю. Я получаю это сообщение об ошибке: Command /bin/sh failed with exit code 1
, а также сообщение об ошибке, созданное модульным тестом. Затем, когда я раскрываю первую ошибку, я получаю это:
PhaseScriptExecution "Run Script" "build/3D Pool.build/Debug-iphonesimulator/LogicTests.build/Script-1A6BA6AE10F28F40008AC2A8.sh"
cd "/Users/james/Desktop/FYP/3D Pool"
setenv ACTION build
setenv ALTERNATE_GROUP staff
...
setenv XCODE_VERSION_MAJOR 0300
setenv XCODE_VERSION_MINOR 0320
setenv YACC /Developer/usr/bin/yacc
/bin/sh -c "\"/Users/james/Desktop/FYP/3D Pool/build/3D Pool.build/Debug-iphonesimulator/LogicTests.build/Script-1A6BA6AE10F28F40008AC2A8.sh\""
/Developer/Tools/RunPlatformUnitTests.include:412: note: Started tests for architectures 'i386'
/Developer/Tools/RunPlatformUnitTests.include:419: note: Running tests for architecture 'i386' (GC OFF)
objc[12589]: GC: forcing GC OFF because OBJC_DISABLE_GC is set
Test Suite '/Users/james/Desktop/FYP/3D Pool/build/Debug-iphonesimulator/LogicTests.octest(Tests)' started at 2010-01-04 21:05:06 +0000
Test Suite 'LogicTests' started at 2010-01-04 21:05:06 +0000
Test Case '-[LogicTests testFail]' started.
/Users/james/Desktop/FYP/3D Pool/LogicTests.m:17: error: -[LogicTests testFail] : Must fail to succeed.
Test Case '-[LogicTests testFail]' failed (0.000 seconds).
Test Suite 'LogicTests' finished at 2010-01-04 21:05:06 +0000.
Executed 1 test, with 1 failure (0 unexpected) in 0.000 (0.000) seconds
Test Suite '/Users/james/Desktop/FYP/3D Pool/build/Debug-iphonesimulator/LogicTests.octest(Tests)' finished at 2010-01-04 21:05:06 +0000.
Executed 1 test, with 1 failure (0 unexpected) in 0.000 (0.002) seconds
/Developer/Tools/RunPlatformUnitTests.include:448: error: Failed tests for architecture 'i386' (GC OFF)
/Developer/Tools/RunPlatformUnitTests.include:462: note: Completed tests for architectures 'i386'
Command /bin/sh failed with exit code 1
Теперь это очень странно, так как при запуске тестов (и при успешном выполнении, как вы можете видеть, мой запуск STFail), потому что, если я добавляю другой тест, который проходит успешно, я не получаю ошибок, поэтому тесты работают нормально. Но почему я получаю эту дополнительную сборку не так?
Также следует отметить, что при загрузке решений / шаблонов, которые должны сработать, я получаю ту же ошибку. Полагаю, я что-то здесь неправильно настроил, но я на 100% правильно выполнил урок!
РЕДАКТИРОВАТЬ: Согласно этот блог , этот пост и несколько других веб-сайтов, я не единственный, кто получает эту проблему. Так было с момента выпуска xCode 3.2, при условии, что документы и учебные руководства Apple Dev Center также до версии 3.2.
Однако некоторые говорят, что это известная проблема, тогда как другие, кажется, думают, что это было намеренно. Мне, например, хотелось бы и расширенную консоль, и сообщения кода, и мне определенно не нравится ошибка «Command / bin / sh ...», и я действительно думаю, что они документировали такое обновление. Надеюсь, это будет исправлено в ближайшее время.
UPDATE:
Вот подтверждение, что что-то изменилось с момента выпуска xCode 3.2.1.
Это изображение:
альтернативный текст http://ing0.co.uk/info/pics/unittest-xcode-3.2.1.png из моей тестовой сборки с использованием 3.2.1. Это из более старой версии (3.1.4):
альтернативный текст http://ing0.co.uk/info/pics/unittest-xcode-3.1.4.png. (проект для обоих не изменился).