Interfejsy procesowe testowania

Interfejsy procesowe testowania
Testowanie jest wpisane w proces wytwarzania oprogramowania, musi więc posiadać interfejsy bezpośrednio łączące je ze wszystkimi (lub prawie wszystkimi) procesami około-wytwórczymi. W artykule pokazano podstawowe relacje dla 5 kluczowych obszarów.


1. Zarządzanie projektem dostarcza do procesu testowania:

  • Informacji o dostawach (dokumentacji i oprogramowania).
    • Czy produkt został dostarczony?
    • Czy produkt jest na akceptowalnym poziomie (decyzja o udostępnieniu)?

 

Proces testowy dostarcza zarządzającemu projektem:

  • Pewności, że jest postęp (incydenty, raportowania i analizy).
  • Informacji o incydentach / błędach, które uniemożliwiają dalszy rozwój oprogramowania.
  • Informacji ułatwiających zarządzanie ryzykiem.


Istnieje ryzyko, że te informacje mogą być postrzegane jako złe wiadomości i niedoświadczony menadżer może negatywnie nastawiać się do testowania jako niepotrzebnego, złego wróżenia.

2. Zarządzanie konfiguracją (wersjonowanie) i zmianą.

Testerzy potrzebują informacji z zarządzania konfiguracją by:

  • Określić co jest testowane.
  • Mieć pewność, że testują produkt, który powinien być testowany.
  • Planować testy regresywne w zależności od zmian.

Tester informuje zarządzających konfiguracją, iż zmiany zostały z sukcesem zaimplementowane (lub nie).

Testerzy przechowują swoje produkty testów pod kontrolą zarządzania konfiguracją.


3. Tworzenie oprogramowania.

Testerzy potrzebują od programistów następujących informacji:

  • Czy funkcjonalność została zaimplementowana?
  • Czy istnieje techniczne ryzyko (np. złożoność, krytyczność etc.)?
  • Jak testować komponenty przy użyciu sterowników i zaślepek etc.?
  • Co zmieniło się w tym wydaniu?
  • Jakie błędy zostały naprawione?
  • Jaki wpływ mogą mieć zmiany na niezmienione komponenty?
  • Dlaczego test nie przechodzi?


Programiści potrzebują od testerów:

  • Szczegółowego opisu incydentu, który chcą zdiagnozować i naprawić.
  • Określenia priorytetetu/pilności incydentu, by został naprawiony w odpowiedniej kolejności
  • Informacji o krytyczności oprogramowania do naprawienia
  • Jak naprawić... (czasami)

Programiści/testerzy muszą ustalić sekwencję i zakres czasowy dla konkretnych dostaw. Dobre (przyjacielskie/produktywne) relacje programista - tester  są krytyczne dla dobrej współpracy w projekcie.

 

4. Wsparcie techniczne

Pracownicy wsparcia technicznego potrzebują od testerów:

  • Wymagań do zbudowania środowiska testowego.
  • Rozpiski zadań oraz określenia poziomu oczekiwanego wsparcia technicznego.
  • Informacji o naturze testów, które są do wykonania.
  • Zaangażowania przy diagnozowaniu i rozwiązywaniu incydentów.


Testerzy potrzebują od wsparcia technicznego:

  • Pomocy przy rozwiązywaniu problemów ze środowiskiem.
  • Wytłumaczenia zmian w środowisku i ich wpływu na plany testów.

 

5. Dokumentacja techniczna

Testerzy znajdują błędy w dokumentacji technicznej w trakcie trwania całego projektu, a przegląd ułatwia znajdowanie błędów w wymaganiach, specyfikacji i projekcie. Z drugiej strony, planowanie testów umożliwia znajdowanie błędów w założeniach czasowych do projektu. Tak znalezione błędy mogą być zgłaszane w bazie defektów i komunikowane autorowi.

Tam, gdzie testowanie ma miejsce przed tworzeniem instrukcji obsługi, autorzy dokumentacji powinni wziąć pod uwagę prawdziwe zachowanie aplikacji.

Tam, gdzie testowanie ma miejsce po stworzeniu dokumentacji użytkownika, testerzy mogą używać instrukcji obsługi jako podstawy do pisania przypadków testowych. Instrukcja może być również traktowana jako procedura testowa.

 

 

To powinno Cię zainteresować