2010-03-14

Om att vilja springa iväg

Jag tittade lite på OCTest, ett unittest-framework för Objective C, som är integrerat i Xcode. Det lät inte så dumt, och det var lätt att komma igång med, även om artikeln på Apples developer-sajt verkade vara runt 8 år gammal och helt inaktuell.

Jag skrev lite tester och skrev lite kod och det funkade alldeles utmärkt, tills ett av testerna failade och det inte var uppenbart för mig hur jag skulle fixa det. Jag testade att sätta en breakpoint. Inget resultat. Testerna körs som ett steg i bygg-fasen av en separat app, så breakpoints man sätter i Xcode funkar givetvis inte.

"Tänk om någon annan på internet har haft samma problem som jag", tänkte jag. Mycket riktigt, det hade någon, som dessutom har bloggat om hur man får det att funka. Synd då att svaret är typ "gör 3000 inställningar, med kommandoradsparametrar och environment-variabler och annat jobbigt".

Som någon skriver i en kommentar: "This makes you want to run away from unit testing. Thanks for the write-up, Chris. But this so should be easier." Svårt att inte hålla med där. Och svårt att förstå hur man kan välja att integrera ett unittesting-framework i ett IDE och inte göra det möjligt att på något smidigt sätt debugga. Men när man hamnar under den polerade ytan på OSX så brukar det vara så här: det liknar väldigt mycket hur det var att köra Linux för 10 år sedan.

Dessutom är det trist om man försöker printf-debugga och råkar hamna i en oändlig loop. Det går inte att avbryta körningen med mindre än att man dödar test-processen. Om man sen försöker titta på utskrifterna så är det givetvis så ansträngande att Xcode antingen går in i badbolls-läge för evigt eller lägger sig ner och dör.

Inga kommentarer: