Co to jest testowanie dynamiczne?
Oprogramowanie obejmuje systemy operacyjne i programy stworzone do działania na jednym lub kilku z nich. Testowanie oprogramowania to proces sprawdzania i używania oprogramowania w trakcie i po jego opracowaniu, ale przed wydaniem, w celu sprawdzenia, czy funkcje działają, wykrycia błędów, sprawdzenia poprawek błędów i upewnienia się, że działa dobrze dla użytkowników. Testy dynamiczne, zwane także analizą dynamiczną, to proces oceny oprogramowania w trakcie jego użytkowania. Kontrastuje to z testowaniem statycznym, czyli analizą programu wykonywanego bez uruchamiania programu. Inne rodzaje testów obejmują testowanie czasu reakcji i testowanie retrospektywne.
Testy statyczne i dynamiczne łącznie są dwoma głównymi rodzajami testów oprogramowania, które są podejmowane i równoważą się na różne sposoby. Z jednej strony testy statyczne wykrywają błędy składniowe i inne problemy z kodowaniem i obejmują cały program. Z drugiej strony dynamiczne testowanie dużego i złożonego programu często może nie obejmować całego programu, ponieważ nie każdy możliwy scenariusz można sobie wyobrazić lub stworzyć w czasie przeznaczonym na testowanie.
Testy dynamiczne analizują oprogramowanie w różnych środowiskach operacyjnych. Dotyczy to różnych marek komputerów i innych różnic sprzętowych, w tym prawdopodobnie wielu monitorów, różnych systemów operacyjnych i różnych zestawów aplikacji współistniejących na komputerze. Ponadto testerzy mogą mieć zewnętrzne moduły lub wtyczki, których używają w związku z testowanym oprogramowaniem, które zwiększa zróżnicowanie środowisk testowych w testach dynamicznych.
Testy dynamiczne w firmie zajmującej się tworzeniem oprogramowania będą prawdopodobnie zgodne z wytycznymi i protokołami określonymi przez IEEE (Institute of Electrical and Electronics Engineers) w zakresie testowania oprogramowania oraz planem testów opracowanym przez firmę zgodnie z nimi. Beta-testery spoza firmy są często wykorzystywane do dodatkowych testów, a testerzy ci są zwykle całkowicie zaangażowani w testy dynamiczne. Zazwyczaj podejmuje się próby posiadania zróżnicowanej grupy testerów wersji beta, jeśli chodzi o sprzęt, systemy operacyjne i użycie programu. Testerzy wersji beta, którzy mogą mieć umowę o zachowaniu poufności z firmą, mogą mieć protokół do przestrzegania lub zostać poproszony o korzystanie z oprogramowania w sposób, w jaki normalnie go używają, lub mogą wykonać niektóre z nich. Generalnie istnieje formalny system raportowania dla testerów wersji beta, który wskazuje na awarie, podejrzenia błędów, brak działania funkcji zgodnie z opisem lub inne nietypowe, nieoczekiwane lub niewygodne aspekty pracy z oprogramowaniem.