T ESTY JEDNOSTKOWE W C# Alicja Majka, 259037. A GENDA Wprowadzenie do środowiska Czym są testy jednostkowe i po co je stosować? XUnit, NUnit Pokrycie.

Slides:



Advertisements
Podobne prezentacje
Zarządzanie konfiguracją oprogramowania
Advertisements

Programowanie obiektowe
Wzorce.
PROGRAMOWANIE STRUKTURALNE
SCR 2008/2009 – informatyka rok 5. Edytor Wizualny - Agenda Przeznaczenie komponentu Funkcjonalność Opis działania.
Wydział Zastosowań Informatyki i Matematyki SGGW
Wspólne skoroszytów Wspólne użytkowanie skoroszytów Arkusze i skoroszyty Tworzenie nowego skoroszytu Obliczenia w skoroszytach Przeglądanie wzorów w skoroszytach.
SIECI KOMPUTEROWE (SieKom) PIOTR MAJCHER WYŻSZA SZKOŁA ZARZĄDZANIA I MARKETINGU W SOCHACZEWIE Zarządzanie.
Projektowanie Aplikacji Komputerowych
Platforma .Net i Vs.Net.
Czyli jak testować w Eclipsie?
Temat nr 10: System przerwań
Programowanie obiektowe. Obiekty. Metody. Właściwości.
Dalsze elementy metodologii projektowania. Naszym celem jest...
Narzędzia do testowania
SZPIF – Harmonogram, Opis narzędzi, Schemat bazy danych
Błędy popełniane przy tworzeniu prezentacji – zadanie dodatkowe
C# Windows Forms Zastosowania Informatyki Wykład 2
© Victo Testowanie dla menedżerów Wersja TDM Slajd 1 (27) Testowanie oprogramowania dla menedżerów Co menedżerowie i kierownicy naprawdę potrzebują
Rozwój aplikacji. To zestaw narzędzi do budowania i optymalizacji złożonych aplikacji opartych na przeglądarce. To zestaw narzędzi do budowania i optymalizacji.
Instytut Tele- i Radiotechniczny WARSZAWA
Podstawy programowania. Język C i C++– podstawy Temat: 1
Podstawy programowania II
Podstawy programowania II
Opracował : Przemysław Drzymała
Instrukcja USOS Rejestracja na zajęcia obieralne wersja by Marek Opacki.
Prezentacja funkcjonalności dziennika e-klasa
BUDOWANIE SCHEMATU BLOKOWEGO REALIZUJĄCEGO PROSTY ALGORYTM
Licencjonowanie narzędzi dla programistów
Bazy danych.
Programowanie obiektowe – zastosowanie języka Java SE
Tworzenie przedmiotów, zajęć i protokołów
Maszyna wirtualna ang. virtual machine, VM.
Tworzenie Aplikacji Internetowych
Ekonometria stosowana
Rational Unified Process Implementacja Aleksandra Reiman, gr. I-52.
Systemy zarządzania treścią Wykład 5
TESTOWANIE OPROGRAMOWANIA
Etapy uruchamiania systemu Pliki konfiguracyjne
Zajęcia I Organizacja zajęć Rejestracja i uruchamianie makr
ZASADY EFEKTYWNEGO PISANIA TESTÓW
W ą t e k (lekki proces) thread.
Testy jednostkowe Visual Studio NUnit.
Podstawy programowania
Bazy i Systemy Bankowe Sp. z o.o. ul. Kasprzaka 3, 85 – 321 Bydgoszcz
Zintegrowany sterownik przycisków. Informacje podstawowe Każdy przycisk jest podłączony do sterownika za pośrednictwem dwóch przewodów, oraz dwóch linii.
Visual Basic w Excelu - podstawy
HTML (ang. HyperText Markup Language ) – język do tworzenia stron internetowych opierający się na znacznikach, czy inaczej je nazywając – tagach. Język.
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
1 Analiza możliwości języka C# w aspekcie oprogramowania dla myszy Łukasz Łysyganicz Nr indeksu Praca napisana pod kierunkiem: Prof. nzw. Dr hab.
Podstawy języka skryptów
Analiza narzędzi do współpracy systemu DNS z LDAP-em
Prezydent 2015 Wsparcie informatyczne Tychy, 23 kwietnia 2015.
Platforma .Net.
Podstawy programowania
obsługa wyświetlacza graficznego
Tryby adresowania i formaty rozkazów mikroprocesora
Stworzenie projektu w cubemx i kontunuacja w sw4stm32
Temat: Porównanie technologii php,c# oraz javascript na przykładzie webaplikacji typu społecznościowy agregator treści Autor: Wojciech Ślawski.
1 Co nowego w i-cut Suite i-cut Layout 14.0.
Dominik Benduski Michał Mandecki Podstawy Visual Basic w Excelu.
 sprawdzają funkcjonalność i poprawność kodu, który napisał programista  sprawdzanie odbywa się poprzez użycie składowych klas dla różnych danych 
Testy jednostkowe. „Test jednostkowy (unit test) to fragment kodu, który sprawdza inny fragment kodu”
1 Mapan i Mapnik. Czyli kilka słów o przeglądarkach leśnej mapy numerycznej. Zespół Zadaniowy ds. Leśnej Mapy Numerycznej. Margonin r.
Od (web)aplikacji biznesowych po (web)game dev Testowanie i spełnianie oczekiwań.
System operacyjny cz.2 i ostatnia
Programowanie obiektowe – zastosowanie języka Java SE
Dynamiczny serwer aplikacyjny w C++ platforma LEFTHAND
Refaktoryzacja czyli odświeżanie kodu
Zapis prezentacji:

T ESTY JEDNOSTKOWE W C# Alicja Majka,

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

W PROWADZENIE DO ŚRODOWISKA Mechanizm testów jednostkowych jest powiązany ze środowiskiem, z którego korzystamy. W tym przypadku – Visual Studio 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.

W PROWADZENIE DO ŚRODOWISKA

Trzeba utworzyć referencję do biblioteki z metodami testującymi, z których będą korzystały testy jednostkowe.

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.

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).

C ZYM SĄ TESTY JEDNOSTKOWE I PO CO JE STOSOWAĆ ?

Uruchomienie testów jednostkowych w VS2013

C ZYM SĄ TESTY JEDNOSTKOWE I PO CO JE STOSOWAĆ ?

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.

XU NIT – PROSTY PRZYKŁAD TESTU JEDNOSTKOWEGO

NU NIT – PROSTY PRZYKŁAD TESTU JEDNOSTKOWEGO

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:

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.

P OKRYCIE KODU – CO TO TAKIEGO ?

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

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?

Ź RÓDŁA WIEDZY Testy jednostkowe, MSDN jednostkowe-w-visual-studio.aspx Wykład z przedmiotu Narzędzia Programistyczne Wikipedia.org

KONIEC! Dziękuję za uwagę!