Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałBartłomiej Markiewicz Został zmieniony 8 lat temu
1
T ESTY JEDNOSTKOWE W C# Alicja Majka, 259037
2
A GENDA Wprowadzenie do środowiska Czym są testy jednostkowe i po co je stosować? XUnit, NUnit Pokrycie kodu – co to takiego? Zalety oraz wady Podsumowanie
3
W PROWADZENIE DO ŚRODOWISKA Mechanizm testów jednostkowych jest powiązany ze środowiskiem, z którego korzystamy. W tym przypadku – Visual Studio 2013. Do Rozwiązania (Solution) dołączana jest dodatkowa klasa testowa. W tej klasie można stworzyć metody testowe. Korzystać będą z metod wcześniej utworzonych w danym Rozwiązaniu. We wcześniejszych wersji Visual Studio (2010) tworzenie testów jednostkowych dla danej klasy było wygodniejsze – zamiast dodawania osobnego pliku i tworzenia go od zera, testy były automatycznie generowane dzięki funkcji pod prawym przyciskiem myszy.
4
W PROWADZENIE DO ŚRODOWISKA
5
Trzeba utworzyć referencję do biblioteki z metodami testującymi, z których będą korzystały testy jednostkowe.
6
C ZYM SĄ TESTY JEDNOSTKOWE I PO CO JE STOSOWAĆ ? Testy jednostkowe – ( ang. Unit Tests ) to fragmenty kodu, które testują inny fragment kodu. Weryfikują poprawność działania pojedynczych elementów programu; metod, obiektów, procedur. Testowany fragment kodu poddawany jest testowi, który wykonuje go i porównuje wynik z oczekiwanymi wynikami.
7
C ZYM SĄ TESTY JEDNOSTKOWE I PO CO JE STOSOWAĆ ? Podczas dokonywania zmian w kodzie warto wiedzieć, że niczego się nie popsuło. Można stworzyć testy weryfikujące, czy urządzenie, z którego korzysta program jest poprawnie podłączone, skonfigurowane itp. (Kinect, EyeTracker ) Dzięki testom jednostkowym można wykryć brak obsługi wyjątków (dzielenie przez 0, wpisanie niepoprawnej wartości, przekazanie niewłaściwego typu do metody – brak rzutowania typów).
8
C ZYM SĄ TESTY JEDNOSTKOWE I PO CO JE STOSOWAĆ ?
10
Uruchomienie testów jednostkowych w VS2013
11
C ZYM SĄ TESTY JEDNOSTKOWE I PO CO JE STOSOWAĆ ?
12
XU NIT, NU NIT XUnit oraz NUnit to dwie struktury (zbiory klas) do testowania kodu w środowisku.NET. Pakiety te składają się z zestawu klas bazowych umieszczonych w bibliotekach dll, które dołączamy do projektu za pomocą referencji oraz aplikacji uruchamiającej testy. Co jest lepsze? Niewiadomo. Jedni korzystają z XUnit, inni korzystają z NUnit.
13
XU NIT – PROSTY PRZYKŁAD TESTU JEDNOSTKOWEGO
15
NU NIT – PROSTY PRZYKŁAD TESTU JEDNOSTKOWEGO
17
T ESTY J EDNOSTKOWE W C# Nie trzeba uruchamiać 10 razy jednego testu, kiedy mamy różny zestaw danych dla jednej metody SUMA. Można do tego wykorzystać pliki.xls (Excel), które są ładowane do Rozwiązania. Jak już wcześniej zauważono, można tak zbudować test, by dla konkretnych zmiennych oczekiwał konkretnego wyjątku. Robi się to w taki sposób:
18
P OKRYCIE KODU – CO TO TAKIEGO ? Pokrycie kodu – ( ang. Code coverage ) jest to miara, która mówi, ile % kodu zostało sprawdzone za pomocą testów jednostkowych. Przyjęto, że dobrze napisane testy pokrywają około 70% napisanego kodu. Nie ma sensu „pokrywać” większej ilości kodu.
19
P OKRYCIE KODU – CO TO TAKIEGO ?
20
Z ALETY ORAZ WADY Zalety: Raz napisany test można uruchomić kilka razy Można je wykonywać na bieżąco (NCrunch – program służący do wykonywania testów, które aktualnie wymagają uruchomienia. Bardzo przydatny, niestety płatny) Możliwość przetestowania funkcjonalności bez uruchamiania całego oprogramowania Wady: Nieco pracochłonne – wygląda to tak, że trzeba napisać dwa kody – właściwy oraz testujący Nie każdy się do tego nadaje Są kosztowne czasowo, nużące
21
P ODSUMOWANIE Tworzenie testów jednostkowych jest przydatne, ale też nie można z nimi przesadzać. Nie powinno się tracić multum czasu na napisanie kilkuset linii kodu testującego, ale czasem trzeba. Nie dają 100% pewności, że testowy kod nie zawiera błędów. Kod testujący również może zawierać błędy, dlatego czasem trzeba pisać testy testów – czy to opłacalne?
22
Ź RÓDŁA WIEDZY Testy jednostkowe, MSDN https://msdn.microsoft.com/pl-pl/library/testy- jednostkowe-w-visual-studio.aspx Wykład z przedmiotu Narzędzia Programistyczne Wikipedia.org
23
KONIEC! Dziękuję za uwagę!
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.