28 Out, 2010 16:00

Erro no framework de testes OCUnit no iOS 4.1

Run unit tests for architecture 'i386' (GC OFF) did not finish

An internal error occurred when handling command output: -[XCBuildLogCommandInvocationSection testName]: unrecognized selector sent to instance 0x2010cff80
An internal error occurred when handling command output: -[XCBuildLogCommandInvocationSection setTestsPassedString:]: unrecognized selector sent to instance 0x2010cff80
An internal error occurred when handling command output: -[XCBuildLogCommandInvocationSectionRecorder endMarker]: unrecognized selector sent to instance 0x2009b8580

Crê-se que o problema esteja relacionado ao output de datas ao iniciar e ao terminar a execução dos testes. Isto foi foi corrigido na versão 4.2 beta 1 do iOS SDK. Mas como você precisa do 4.1 para submeter aplicativos para a App Store, vai precisar que isto esteja funcionando.

Para isso, existem duas soluções. Neste link, Andy W explica um modo simples de acabar com o problema. Basta modificar o Run Script stage no target, alterando

"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests"

para

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

O forum de desenvolvimento da Apple também fornece solução para o problema. Esta não é a primeira vez que a Apple lança uma versão que quebra o framework de testes. Ironicamente, parece que eles não tem ferramenta de testes para testar a ferramenta de testes deles. :P

Ao navegar neste site, você consente o uso de cookies nossos e de terceiros, que coletam informações anônimas e são essenciais para melhorar sua experiência em nosso site.