Seminarium: Systemy Rozproszone
7 października 2010, godzina 12:15, sala 4070
Marcin Pawłowski


Współczesne techniki testowania



Przeprowadzanie dowodów poprawności programów pozostaje zbyt trudne i kosztowne do stosowania poza przypadkami, gdy są one skrajnie proste lub wymagana jest absolutna niezawodność, niezależnie od kosztów. Oznacza to, że na co dzień pozostajemy zdani na tradycyjne, czasochłonne testowanie w celu zapewniania pożądanej jakości. Od lat prowadzone są badania nad metodami testowania oraz ich teoretycznymi podstawami, lecz postęp w tej dziedzinie wydaje się być niewielki. Współczesna metodologia testowania wciąż opiera się w większej mierze na zdroworozsądkowych wskazówkach zaczerpniętych z wielu lat doświadczenia, niż na rygorystycznej analizie formalnej. Jako efekt końcowy otrzymujemy programistę poświęcającego wiele czasu na mało efektywne testy oraz wypełnione błędami oprogramowanie. Sytuacja nie jest jednak beznadziejna. Dzięki rozwojowi otwartego oprogramowania otrzymujemy coraz więcej narzędzi które umożliwiają bardziej 'wydajne' testowanie. Takimi narzędziami są na przykład: impressions, junit, mujava oraz fusil.

Na seminarium pokrótce omówię miejsce testowania w cyklu rozwoju oprogramowania oraz różne kryteria mówiące o tym jak dobry jest zestaw testów. Następnie przejdę do omówienia i pokazania przykładów zastosowania narzędzi jakimi są impressions, junit, mujava oraz fusil (z największym naciskiem na to ostatnie narzędzie).

Serdecznie zapraszam!
Marcin Pawłowski