Testowanie i kontrola jakości w IT
Testowanie aplikacji stanowi krytyczny element z punktu widzenia bezpieczeństwa organizacji i efektywności jej procesów. Awarie i niewłaściwe działania systemów mogą spowodować niemożliwe do odrobienia straty, zarówno finansowe jak i wizerunkowe. Dlatego ważne jest, aby testy w możliwie najlepszy sposób sprawdzały ich działanie przed wdrożeniem gotowych rozwiązań. Proponujemy naszym klientom kompleksowe wsparcie w obszarze zapewnienia jakości przez: zdefiniowanie procesu testowania i kontroli jakości, wsparcie w planowaniu testów na podstawie wymagań (badanie pokrycia), automatyzację testów funkcjonalnych i wydajnościowych, wykonanie testów regresji oraz wdrożenie mechanizmów zarządzania błędami i procesu ich naprawy.
Model korzyści:
- Podniesienie jakości powstających systemów
- Zwiększenie bezpieczeństwa systemów
- Zmniejszenie kosztów utrzymania w związku z awariami i przestojami
- Zwiększenie zakresu testów poprzez ich automatyzację (kontrola większej liczby scenariuszy, na większej ilości danych testowych)
- Optymalizacja wydajności systemów
Przykłady wdrożeń:
Dla klienta z branży telekomunikacyjnej został przeprowadzony projekt automatyzacji funkcjonalnych testów regresyjnych dla wskazanych aplikacji. W jego strukturze organizacyjnej funkcjonuje Zespół Zapewnienia Jakości, który wykonuje testy regresyjne po każdej dostawie nowej wersji lub po wprowadzeniu poprawek dla wersji bieżącej. Powoduje to duże obciążenie zespołu związane z wykonywaniem powtarzalnych, czasochłonnych oraz często skomplikowanych logicznie i funkcjonalnie testów. Aby usprawnić ten proces podjęto decyzję o ich automatyzacji. Wykonane dla klienta automaty dla poszczególnych aplikacji, zostały tak zaprojektowane, aby ich obsługa była jak najprostsza. Każdy automat ma zaimplementowany mechanizm pobierania do testu właściwych danych testowych dla kolejnych scenariuszy testowych. Wprowadzone są również mechanizmy kompensujące długie czasy odpowiedzi aplikacji i prawidłową obsługę komunikatów przesyłanych przy wykorzystaniu technologii AJAX. Wynikiem wykonania testu jest raport zawierający niezbędne do oceny aplikacji dane oraz elementy pozwalające precyzyjnie określić i opisać występujące ewentualnie błędy (dokładny czas, miejsce w aplikacji, krok testu, zrzut ekranu). Realizacja projektu pozwoliła zmniejszyć czas potrzebny na przeprowadzenie testów regresji dla wybranych do automatyzacji aplikacji od kilkunastu do kilkudziesięciu razy. Mechanizm automatycznego pobierania odpowiednich danych testowych skrócił znacznie czas potrzebny na pozyskanie prawidłowych danych dla poszczególnych scenariuszy testowych. Architektura wykonanych automatów pozwala na ich łatwą rozbudowę lub modyfikację w przypadku zmiany scenariusza procesu biznesowego.

