Jag ville använda unit-tester till ett Cocoa-projekt.
Dum som jag är så gjorde jag ett nytt försök med OCUnit, vilket jag skrivit om tidigare. Jag vet inte varför jag ens brydde mig. Det suger inte bara för att Steve Jobs har bestämt att man ska använda det på ett idiotiskt sätt, utan även för att det saknar dokumentation, saknar ett uppenbart sätt att köra sina unit-tester programmatiskt och presenterar sina resultat på ett dåligt sätt.
Nästa steg var att testa med Google C++ Testing Framework, som vi kör på jobbet. Det funkar ganska exakt som man vill att det ska göra, letar automatiskt upp ens testfall, kör dem och ger vettig output. Google Test är dock C++, och även om det går bra att blanda C och C++ så ska man tydligen inte försöka blanda C, C++ och Objective-C. Nitlott igen.
Samtidigt som Björn Skifs och Arne Hegerfors hoppade fram och vrålade "TREDJE GÅNGEN GILLT" i örat på mig (det piper fortfarande), så drog jag ner CUnit. Jag säger som Neal: "Aaaaah..." Det är lite mer jobb än med Google Test, eftersom C inte har RTTI, så man får snällt registrera sina testfall, men det som är trevligt med CUnit är att det går att använda på ett vettigt sätt. Och med lite snabbt hopkokad hjälpkod så är den extra ansträngningen för att registrera testsviter och testfall minimal.
CUnit får 3 sälar på den grönländska betygsskalan.
2010-08-14
CEnhet
Etiketter:
apple,
cocoa,
CUnit,
google,
Grönland,
OCUnit,
sjukt nördig,
steve jobs,
sälar,
test-driven utveckling
Prenumerera på:
Kommentarer till inlägget (Atom)
4 kommentarer:
- Vet du varför 50 Cent skriver så grymt stabil kod?
- Nej... eh... nånting med G-Unit?
- Ja...
"Google Test är dock C++, och även om det går bra att blanda C och C++ så ska man tydligen inte försöka blanda C, C++ och Objective-C."
Med Google Test eller bara i allmänhet? C är ju trots allt en delmängd av Objective-C.
C är också en delmängd av C++, och C är inte problemet. Objective-C och C++ är två helt olika språk, så att blanda Objective-C och C++ gav mig problem.
Det slår mig dock nu att något i stil med "Objective-C++" nämndes på WWDC. Så hade jag bara kallat filen för .mm så kanske knompilatorn glatt hade knompilerat den.
Fast för CUnit gäller att det går an, för bli lite pissintellektuell och citera Almqvist.
wv: equal
Skicka en kommentar