Testy jednostkowe. „Test jednostkowy (unit test) to fragment kodu, który sprawdza inny fragment kodu”

Slides:



Advertisements
Podobne prezentacje
Wprowadzenie do narzędzi CAT
Advertisements

Programowanie obiektowe
Programowanie obiektowe
PL/SQL kompilacja warunkowa
Wzorce.
PROGRAMOWANIE STRUKTURALNE
Wydział Zastosowań Informatyki i Matematyki SGGW
Projektowanie Aplikacji Komputerowych
Platforma .Net i Vs.Net.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Czyli jak testować w Eclipsie?
Dziedziczenie i jego rodzaje
Opracowanie i weryfikacja algorytmów szeregowania zadań dla potrzeb redukcji poboru mocy układów cyfrowych. Temat ten jest częścia jednego z 12 etapów.
Programowanie obiektowe. Obiekty. Metody. Właściwości.
Wstęp do programowania obiektowego
Java – programowanie obiektowe
Projektowanie i programowanie obiektowe II - Wykład IV
Wstęp do interpretacji algorytmów
Projekt i implementacja aplikacji wspomagającej testowanie
SZPIF – Harmonogram, Opis narzędzi, Schemat bazy danych
© Victo Testowanie dla menedżerów Wersja TDM Slajd 1 (27) Testowanie oprogramowania dla menedżerów Co menedżerowie i kierownicy naprawdę potrzebują
Podstawy programowania
Rozwój aplikacji przy wykorzystaniu ASP.NET
Instytut Tele- i Radiotechniczny WARSZAWA
Podstawy programowania
EasyLoad BI zarządzanie wczytywaniem danych do hurtowni przez użytkowników biznesowych Prezentacja rozwiązania.
Programowanie strukturalne i obiektowe
Automatyka i Robotyka Systemy czasu rzeczywistego Wykład 4.
Word to proste!.
Refaktoryzacja Robert Pająk.
Dziedziczenie Maciek Mięczakowski
Programowanie obiektowe Wykład 6 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/14 Dariusz Wardowski.
Maszyna wirtualna ang. virtual machine, VM.
Kilka wybranych uzupelnień
Przeglądanie zasobów komputera - uruchamianie programów
Tworzenie Aplikacji Internetowych
Programowanie obiektowe – język C++
Rational Unified Process Implementacja Aleksandra Reiman, gr. I-52.
Etapy uruchamiania systemu Pliki konfiguracyjne
Zajęcia I Organizacja zajęć Rejestracja i uruchamianie makr
Programowanie w języku C++
Testy jednostkowe Visual Studio NUnit.
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Zaawansowane techniki obiektowe
Bazy i Systemy Bankowe Sp. z o.o. ul. Kasprzaka 3, 85 – 321 Bydgoszcz
Visual Basic w Excelu - podstawy
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Algorytmy- Wprowadzenie do programowania
Instrukcje wyboru.
Podstawy języka skryptów
Projektowanie obiektowe. Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram.
Paweł Starzyk Obiektowe metody projektowania systemów
Platforma .Net.
Łukasz Bieszczad Mateusz Gałązka Karol Włodarek
PLAN PREZENTACJI: 1. WSTĘP 2. HISTORIA 3. PLATFORMA 4. WADY I ZALETY 5. TITANIUM vs PHONEGAP CJE 6. PRZYKŁAD.
Programowanie Zaawansowane
Edytory tekstowe stron WWW
Wstęp do interpretacji algorytmów
Tryby adresowania i formaty rozkazów mikroprocesora
Temat: Porównanie technologii php,c# oraz javascript na przykładzie webaplikacji typu społecznościowy agregator treści Autor: Wojciech Ślawski.
Microsoft® Office Word
T ESTY JEDNOSTKOWE W C# Alicja Majka, A GENDA Wprowadzenie do środowiska Czym są testy jednostkowe i po co je stosować? XUnit, NUnit Pokrycie.
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 
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
Przykłady zewnętrznych bibliotek do PHP Laboratorium z Baz Danych Łukasz Zubkowicz.
Programowanie Obiektowe – Wykład 2
Wprowadzenie do programowania obiektowego
JavaBeans by Paweł Wąsala
Haskell Składnia funkcji.
Zapis prezentacji:

Testy jednostkowe

„Test jednostkowy (unit test) to fragment kodu, który sprawdza inny fragment kodu”

Metoda testowania tworzonego oprogramowania poprzez wykonywanie testów weryfikujących poprawność działania pojedynczych elementów (jednostek) programu - np. metod lub obiektów w programowaniu obiektowym lub procedur w programowaniu proceduralnym. Testowany fragment programu poddawany jest testowi, który wykonuje go i porównuje wynik (np. zwrócone wartości, stan obiektu, wyrzucone wyjątki) z oczekiwanymi wynikami - tak pozytywnymi, jak i negatywnymi.

 Pozwalają efektywnie wyszukiwać błędy w istniejącym kodzie.  Umożliwiają szybką weryfikację nowo- powstałych elementów programu.  Ułatwiają pracę w grupie dzięki łatwiejszemu łączeniu różnych fragmentów kodu podanych wcześniej testom.  Automatyzacja procesu testowania.

 Testowanie zmusza do lepszego przemyślenia rozwiązań. Musimy dokładnie określić jakie zadania dana metoda ma wykonywać.  Łatwo przeprowadzić testy regresyjne. Po prostu po wprowadzeniu zmian przeprowadzamy stworzone przedtem testy sprawdzając czy zmiana nie wpływa na działanie innych fragmentów kodu.  Oszczędność czasu - testy są w pełni powtarzalne i zautomatyzowane.

 Zmiana stylu pracy  Nigdy nie jest możliwe w 100 % wykluczenie pojawienia się jakiegoś błędu

 kodu testowanego - kodu, który zawiera pewną funkcjonalność, którą będziemy testować  działających, wykonujących się poprawnie testów jednostkowych dla kodu testowanego.

Jest jednym z testujących narzędzi pod platformę.NET. Za jego pomocą można łatwo i przyjemnie pisać testy jednostkowe kodu (przyszłego lub wcześniej zaprojektowanego).

Pakiet ten składa się z dwóch części: zestawu klas bazowych umieszczonych w bibliotekach dll, które dołączamy do projektu i wykorzystujemy w naszych klasach testujących, oraz drugiej części, aplikacji uruchamiającej testy (mamy dwie wersje okienkową oraz konsolową).

Czas na przykład ! Instalacja NUnit

Abyśmy mogli zacząć testować cokolwiek musimy najpierw dodać referencje do framework’a Nunit.

Posiadając jakiś projekt możemy śmiało rozpocząć pisanie naszego pierwszego testu. Klasę zawierającą testy jednostkowe oznaczamy atrybutem [TextFixture], natomiast poszczególne metody testowe atrybutem [Test]. Pozwala to środowisku testowemu na znalezienie metod które zawierają nasze testy jednostkowe. Wszystkie te elementy (zarówno klasa, jak i metody) muszą być publiczne, przy czym metody nie powinny nic zwracać i nie powinny przyjmować żadnych argumentów.

 [Ignore] – ignorowanie testu  [TestFixtureSetUp] – oznaczanie metody wywoływanej przed testami  [TestFixtureTearDown] – oznaczanie metody wywoływanej po zakończeniu testów  [Category] – oznaczenie przynależności klasy testowej do danej kategorii  [Explicite] – ignorowanie testu w przypadku uruchomienia wszystkich testów naraz

Zazwyczaj przyjmuje formę wyrażenia logicznego, które zwraca albo prawdę albo fałsz. Stanowi więc doskonałe narzędzie, dzięki któremu możemy w prosty sposób, wychwycić błędy w pisanych aplikacjach.

 AreEqual – porównanie wartości zmiennej  AreSame – porównanie referencji do obiektów  IsFalse, IsTrue – porównanie wartości logicznych  IsNull, IsNotNull – porównanie referencji z nullem  Fail – wymuszenie niepowodzenia testu I wiele innych …

 Podpięcie pod tryb debugowania VS  TestDriven.NET- 3.0 (darmowy) pozwala na uruchamianie Nunit bezpośrednio z menu kontekstowego

Jak się okazuje Nunit jest bardzo pomocnym narzędziem pozwalającym nam sprawdzić, czy dany fragment programu (metoda) zachowuje się zgodnie z oczekiwaniami. Jak wiadomo nie wszystko da się przetestować za pomocą gui, a pisanie małych programów do testowania metod mija się z celem. Dzięki takiemu narzędziu, jakim jest Nunit możemy tworzyć stabilniejsze programy, działające zgodnie z oczekiwaniami, lepiej przetestowane.

Paweł Łęgowski