Zmodernizuj proces programowania i popraw jakośc kodu dzięki narzędziom do testowania jednostek w C/C++ (Unit Testing Tools)
Testowanie jednostek to najskuteczniejszy sposób wykrycia jak największej liczby blędów. Badania wykazały, że testowanie jednostek jest bardziej efektywne z punktu widzenia kosztów niż inne etapy testowania. W projektach, które wymagają wysokiej jakości i niezawodności, testowanie jednostek stanowi kluczową fazę testowania. Jednostki (Units) to najmniejsze częsci służące do budowy programu. W takim języku jak C jednostki składają się z funkcji .Testowanie jednostek to proces, przez który indywidualne komponenty programu(klasy, metody lub funkcje) zostają przetestowane w odosobnionym środowisku na długo przed testowaniem duźego zintegrowanego modulu lub systemu jako calości.
Główną zaletą testowania jednostek jest to, że testowanie odbywa sie "blisko" blędów w szczególnej części kodu, ułatwiając i przyspieszając przez to rozpoznanie blędów. Dla tych samych powodów odnajdywanie i poprawa blędów są uproszczone przez ograniczenie obszarów kodu w których należy szukać blędów do małych jednostek.
Przez testowanie jednostek można znaleźć blędy tak szybko jak tylko jest to możliwe podczas tworzenia oprogramowania, w fazie, w której błędy są łatwiejsze do wykrycia i do poprawy. Można testować częsci projektu nie musząc czekac na to kiedy inne części będą dostępne. Dzięki testowaniu jednostek/modułów można osiągnąć najpełniejsze pokrycie testowe metod oraz klas, odkrywając przy tym problemy, których nie da się wykryć w późniejszych fazach programowania. Będziesz mógł przetestować warunki wewnętrzne do których nie jest łatwo dotrzec przez wprowadzanie danych zewnętrznych w wiekszych zintegrowanych systemach. Mimo tego, źe testowanie jednostek jest niezwykle skuteczne, wielu programistów niechętnie sięga po nie, ponieważ programowanie środowiska testowego (harnesses) i szablonow funkcji systemu, które nie są jeszcze zaprogramowane (stubs)jest bardzo pracochłonne. Testowanie jednostek wymaga specyficznego kodu testowego często tak dużego i skomplikowanego jak kod, ktory się testuje. Jako skutek, ręczne testowanie modułów jest często ograniczone. Programy testowe nie tylko muszą być napisane ale również przetestowane aby upewnić się że będą działały zgodnie z oczekiwaniami. Oto powód, dla którego ręczne testowanie komponentów jest drogie i nie zawsze skuteczne.
Rozwiązaniem jest użycie narzędzia do testowania jednostek, takiego jak CTA++ firmy Testwell. To narzędzie automatycznie generuje kompletne otoczenie testowe ( harnesses and stubs) dla jednostki (jednostek) kodu C lub C++ który chcesz przetestowac. CTA++ eliminuje potrzebę programowania i testowania otoczenia testowego przed testowaniem kodu źródłowego. Narzędzie pozwala na testowanie w trwałym i możliwym do powtarzania procesie testowania. Osoba programujaca/testująca może skupic się raczej na stwarzaniu przypadków testów niż na mechanicznych i często uciążliwych czynnościach pomocniczych Wykonywanie skryptów ułatwia przeprowadzanie testów bez manualnej interwencji.
Używając CTA++ otrzymasz lepszą jakość kodu w krótszym czasie i przy niższych kosztach programowania, obsługi technicznej i pielęgnacji. Za każdym razem gdy komponent programu jest zmieniony w celu rozszerzenia funkcji albo poprawy błędu poleca się powtórzenie wszystkich przypadków testowych. Z CTA++, automatyzacja tak wielu czynności rutynowych jak możliwe (używając przypadków testowych stworzonych wcześniej)zmniejsza monotonie testowania. Ten test regresyjny pozwoli upewnić się, że zmiana wprowadzona do program nie wprowadzi nowych blędów. Przypadki testowe będą modyfikowane i wiele razy ponownie wykonywane w przyszłości. Dokumentowanie przypadków testowych jest bardzo ważne dla ich skutecznego użycia w przyszłości. CTA++ zapewnia, ze dokumentacja przypadku testowego zostaje zautomatyzowana jako część procesu testowania.
Żeby zapewnić, że każda częśc kodu została przetestowana, narzędzie do testowania jednostek powinno być yżywane wraz z narzędziem pokrycia testowego takiego jakCTC++.
last updated: 28.05.2008 translation: Nicolas Kustra
© 2008 Verifysoft Technology GmbH
CTA++ and CTC++ are products of Testwell Oy, Tampere (Finland)
all other trademarks of this site are the property of their respective owners.