Marnotrawstwo w testach oprogramowania

Marnotrawstwo w testach oprogramowania
Testowanie oprogramowania jest działaniem nieskończonym, dlatego też wszystkie aktywności muszą być optymalizowane. Należy unikać marnotrawstwa czasu, pieniędzy i zasobów. Oto kilka przykładów, kiedy brak efektywności generuje niepotrzebną pracę.

Aspekt marnotrastwa można rozpatrywać w wielu wymiarach. My przeanalizujemy go w kontekście funkcji, przypadków testowych, regresji oraz automatyzacji. 

Przeanalizuj poniższe nieoptymalne czynności, a może uda Ci się znaleźć obszary, w których możesz usprawnić własne testowanie.

Funkcje:

  • testowanie funkcji zaimplementowanych, ale niepotrzebnych,
  • szczegółowe testowanie funkcji zaimplementowanych, ale używanych rzadziej niż sporadycznie,
  • testowanie funkcji zaimplementowanych, ale niedziałających tak, jak oczekiwał tego klient,
  • testowanie funkcji zaimplementowanych, ale niewydawanych, czyli takich, które nie zostaną dostarczone w następnym wydaniu,
  • testowanie funkcji niezaimplementowanych, po nieprawdziwej informacji, że zostały zaimplementowane,
  • testowanie funkcji, które nie zostały zmodyfikowane od ostatnich testów.

Przypadki testowe:

  • projektowanie przypadków testowych dla funkcji, które nie zostaną zaimplementowane,
  • projektowanie przypadków testowych dla funkcji, które mają najniższy priorytet,
  • projektowanie przypadków testowych, ponieważ aktualnie nie ma nic lepszego do roboty,
  • projektowanie przypadków testowych, które nigdy nie zostaną uruchomione.

Testy regresu:

  • włączenie wszystkich przypadków testowych do zestawu testów regresji,
  • uruchamianie wszystkich testów regresywnych na każdej wersji,
  • wykonanie regresji bez analizy wpływu,
  • pełna regresja manualna bez automatyzacji.

Automatyzacja:

  • automatyzacja tylko metodą nagrywania i odtwarzania,
  • automatyzacja wszystkiego,
  • automatyzacja bez strategii,
  • automatyzacja niestabilnych części aplikacji,
  • automatyzacja bez wsparcia grupy programistycznej.

Niestety to tylko mała część codziennych nieefktywności testerskich. Jeśli chcesz podnieść jakość swojej pracy, musisz wyeliminować je wszystkie. Będzie to z korzyścią i dla Ciebie, i dla Twojego projektu.

 

Artykuł został zaktualizowany. Oryginalny wpis ukazał się 18/01/2013. 

To powinno Cię zainteresować