TestLodge - wsparcie przy procesie testowym
Do napisania łatwego scenariusza testowego wystarczy kartka i długopis. Sprawdzi się też dokument w najprostszym edytorze tekstu lub arkusz w Excelu. Jednak testerzy naszej agencji drupalowej, którzy wiedzą, że spora część sukcesu oraz efektywność pracy zależą od uporządkowania pracy własnej, sięgną po narzędzie wspierające zarządzanie procesem testowania (Test Management Tool). Jednym z takich narzędzi jest dostępny przez przeglądarkę TestLodge (http://www.testlodge.com/).
TestLodge ułatwia organizację pracy testera. Pozwala na zgromadzenie w jednym miejscu planów testów, wymagań, zdefiniowanych przypadków testowych oraz statusów wykonania poszczególnych testów. Sprawdzi się przede wszystkim w projektach, nad którymi pracują małe i średnie zespoły, i których złożoność nie jest specjalnie rozbudowana, a wymagania są jasno sprecyzowane.
Plany testów można utworzyć korzystając z gotowego szablonu, w którym możemy zamieścić specyfikację projektu, określić terminy poszczególnych wdrożeń, wersje testowanego produktu, opis ogólnych funkcjonalności, które będą sprawdzane oraz inne dane uszczegóławiające proces testowy. Moduł odpowiedzialny za uporządkowanie wymagań pozwala na specyfikację działania poszczególnych funkcjonalności, które będą weryfikowane przez wykonywane przypadki testowe. Przypadkom testowym (test cases) w TestLodge poświęconego jest najwięcej miejsca, jako że są one podstawą weryfikacji jakości. Przypadki testowe są pogrupowane w zestawy testowe (test suites), zgodnie z podejściem, że zestaw testowy to przynajmniej dwa przypadki testowe, gdzie zweryfikowane dane wyjściowe jednego są naturalnymi danymi wejściowymi następnego przypadku. Każdemu test case nadawany jest tytuł, który powinien jednoznacznie wskazywać na testowane wymaganie, a następnie jest miejsce na zdefiniowanie kroków (test steps), jakie są podejmowane by doprowadzić do oczekiwanego rezultatu (expected result). Każdemu przypadkowi testowemu można przypisać (niejedno) wymaganie, które w danym momencie jest weryfikowane.
TestLodge wspiera śledzenie defektów – umożliwia ręczne nadawanie statusów poszczególnym zadaniom i ich późniejszym zmianom. Jeśli podjęte w czasie sprawdzania przypadku testowego kroki doprowadziły do uzyskania spodziewanego rezultatu oraz spełnione zostały określone wymagania, zadanie otrzymuje status 'passed'. Możliwe jest także ominięcie ('skipped') sprawdzenia danego przypadku testowego (np. jeśli określona funkcjonalność nie jest jeszcze gotowa do przetestowania) i przejście do następnego. W momencie, gdy test zakończył się niepowodzeniem – podjęte kroki nie przyniosły spodziewanego wyniku lub pojawiły się inne nieprawidłowości w działaniu, nadawany jest status 'failed' wraz z możliwością automatycznego exportu całego test case do narzędzia, które używane jest do zarządzania projektem (TestLodge może być zintegrowany m.in. z Redmine, Jira, Bugzilla, Mantis, Assembla).
Podsumowując, TestLodge jest narzędziem prostym i przydatnym. Poniżej zbiorcza ocena oferowanych możliwości.
Zalety:
- intuicyjny interfejs, nie potrzeba poświęcać dużo czasu na zapoznanie się z narzędziem i możliwościami, które oferuje
- możliwość edycji każdego elementu w dowolnym momencie (edycja planów, wymagań, przypadków)
- wersjonowanie treści, dostępna jest historia aktywności, w związku z czym można szybko przywrócić treści sprzed edycji oraz prześledzić zmiany
- możliwość załączania zdjęć, szczególnie przydatna przy zgłaszaniu błędów (załączanie zrzutów ekranu pomaga w określeniu problemu)
- manualne nadawanie statusów wykonywanym testom
- możliwość wyświetlenia wszystkich elementów dokumentacji testowej w formacie XML lub HTML
- zbiorcze przedstawienie wyników z przeprowadzonych testów, w formie raportów
Wady:
- nie można zmienić kolejności wymagań i zestawów testowych (w przypadku test cases jest taka możliwość), a jedynie posortować po dacie utworzenia, aktualizacji lub tytule – przydałaby się możliwość spersonalizowania kolejności
- przydałaby się możliwość komentowania, szczególnie test case oraz wyraźne nadawanie priorytetów pojawiającym się defektom (można to zrobić dopiero z poziomu narzędzia, do którego eksportowane jest zgłoszenie błędu).