Automatyzacja wg HP

4
Najlepsze praktyki i procedury wdrażania rozwiązań do automatyzacji testów funkcjonalnych Nie ma żadnych wątpliwości, że rygorystyczne testy funkcjonalne są najważniejszym czynnikiem gwarantującym sukces w procesie tworzenia aplikacji. Największym wyzwaniem stojącym przed programistami, działami kontroli jakości i kadrą kierowniczą jest przyspieszenie procesów testowania i zwiększenie ich precyzji oraz zakresu — bez uszczerbku dla budżetu firmy, który i tak jest bardzo ograniczony. Automatyzacja kluczowych elementów testów funkcjonalnych pozwala przedsiębiorstwom dotrzymywać wymagających terminów wdrażania nowych wersji oprogramowania, przeprowadzać testy w bardziej kompleksowy i wiarygodny sposób oraz analizować poprawność realizacji procesów biznesowych. Perspektywa automatyzacji testowania funkcjonalnego wiąże się jednak z nowymi pytaniami. Jakie są koszty automatyzacji procesów testowania i jaki jest zwrot z inwestycji (ROI)? Które aplikacje i procesy można poddać zautomatyzowanym testom, a które nie? Czy zachodzi potrzeba przeprowadzenia szkoleń oraz w jaki sposób wpłyną one na harmonogramy aktualnie realizowanych projektów programistycznych? Jaką metodologię automatyzacji testów należy wybrać? Jak wyglądają zautomatyzowane testy? Które funkcje są najważniejsze podczas porównywania różnych produktów do automatyzacji testów? Przed rozpoczęciem projektów automatyzacji testów należy bardzo dokładnie przeanalizować i zrozumieć te i inne zagadnienia. Dlaczego warto automatyzować procesy testowania funkcjonalnego? Współczesne przedsiębiorstwa informatyczne znajdują się pod coraz większą presją. Kierownictwo oczekuje od działów informatycznych dostępu do nowych funkcji, odkrywania nowych możliwości biznesowych i zapewnienia przewagi konkurencyjnej poprzez oprogramowanie. Oznacza to konieczność realizacji o wiele większej liczby projektów tworzenia aplikacji biznesowych, przy bardziej napiętych terminach. Nie zawsze towarzyszy temu jednak większy budżet czy większa ilość zasobów. Jednocześnie kadra zarządzająca ma coraz większą świadomość, że oprogramowanie i przychody są ze sobą ściśle związane. Usługi internetowe, przetwarzanie transakcji online (OLTP) oraz aplikacje do zarządzania zasobami przedsiębiorstwa (ERP) mają nie tylko strategiczne znaczenie dla firmy, ale są bezpośrednio związane z możliwością generowania przychodów. Więcej informacji na temat rozwiązań HP do testowania funkcjonalnego można znaleźć pod adresem: www.hp.com/go/software. © Copyright 2006 –2008 Hewlett-Packard Development Company, L.P. Informacje zawarte w niniejszym dokumencie mogą ulec zmianie bez powiadomienia. Jedyne warunki gwarancji na produkty i usługi HP są określone w kartach gwarancyjnych dostarczanych wraz z tymi produktami lub usługami. Żadne treści zawarte w niniejszej publikacji nie mogą być rozumiane jako udzielenie dodatkowej gwarancji. HP nie ponosi odpowiedzialności za błędy techniczne lub redakcyjne ani pominięcia w niniejszym dokumencie. Intel jest znakiem towarowym firmy Intel Corporation w Stanach Zjednoczonych i innych krajach. Microsoft, Windows, Windows NT i Windows Vista są znakami towarowymi firmy Microsoft zastrzeżonymi w Stanach Zjednoczonych. Nazwa Oracle jest zastrzeżonym znakiem towarowym firmy Oracle Corporation i/lub jej podmiotów stowarzyszonych. Java jest znakiem towarowym firmy Sun Microsostems Inc. zastrzeżonym w Stanach Zjednoczonych. 4AA1-1390ENW, lipiec 2008 Technologia poprawiająca wyniki finansowe przedsiębiorstwa

Transcript of Automatyzacja wg HP

Page 1: Automatyzacja wg HP

Najlepsze praktyki i procedury wdrażania rozwiązań do automatyzacji testów funkcjonalnych

Nie ma żadnych wątpliwości, że rygorystyczne testy funkcjonalne są najważniejszym czynnikiem gwarantującym sukces w procesie tworzenia aplikacji. Największym wyzwaniem stojącym przed programistami, działami kontroli jakości i kadrą kierowniczą jest przyspieszenie procesów testowania i zwiększenie ich precyzji oraz zakresu — bez uszczerbku dla budżetu firmy, który i tak jest bardzo ograniczony.

Automatyzacja kluczowych elementów testów funkcjonalnych pozwala przedsiębiorstwom dotrzymywać wymagających terminów wdrażania nowych wersji oprogramowania, przeprowadzać testy w bardziej kompleksowy i wiarygodny sposób oraz analizować poprawność realizacji procesów biznesowych.

Perspektywa automatyzacji testowania funkcjonalnego wiąże się jednak z nowymi pytaniami.

• Jakie są koszty automatyzacji procesów testowania i jaki jest zwrot z inwestycji (ROI)?

• Które aplikacje i procesy można poddać zautomatyzowanym testom, a które nie?

• Czy zachodzi potrzeba przeprowadzenia szkoleń oraz w jaki sposób wpłyną one na harmonogramy aktualnie realizowanych projektów programistycznych?

• Jaką metodologię automatyzacji testów należy wybrać?

• Jak wyglądają zautomatyzowane testy?

• Które funkcje są najważniejsze podczas porównywania różnych produktów do automatyzacji testów?

Przed rozpoczęciem projektów automatyzacji testów należy bardzo dokładnie przeanalizować i zrozumieć te i inne zagadnienia.

Dlaczego warto automatyzować procesy testowania funkcjonalnego?

Współczesne przedsiębiorstwa informatyczne znajdują się pod coraz większą presją. Kierownictwo oczekuje od działów informatycznych dostępu do nowych funkcji, odkrywania nowych możliwości biznesowych i zapewnienia przewagi konkurencyjnej poprzez oprogramowanie. Oznacza to konieczność realizacji o wiele większej liczby projektów tworzenia aplikacji biznesowych, przy bardziej napiętych terminach. Nie zawsze towarzyszy temu jednak większy budżet czy większa ilość zasobów.

Jednocześnie kadra zarządzająca ma coraz większą świadomość, że oprogramowanie i przychody są ze sobą ściśle związane. Usługi internetowe, przetwarzanie transakcji online (OLTP) oraz aplikacje do zarządzania zasobami przedsiębiorstwa (ERP) mają nie tylko strategiczne znaczenie dla firmy, ale są bezpośrednio związane z możliwością generowania przychodów.

Więcej informacji na temat rozwiązań HP do testowania funkcjonalnego można znaleźć pod adresem:

www.hp.com/go/software.

© Copyright 2006 –2008 Hewlett-Packard Development Company, L.P. Informacje zawarte w niniejszym dokumencie mogą ulec zmianie bez powiadomienia. Jedyne warunki gwarancji na produkty i usługi HP są określone w kartach gwarancyjnych dostarczanych wraz z tymi produktami lub usługami. Żadne treści zawarte w niniejszej publikacji nie mogą być rozumiane jako udzielenie dodatkowej gwarancji. HP nie ponosi odpowiedzialności za błędy techniczne lub redakcyjne ani pominięcia w niniejszym dokumencie.

Intel jest znakiem towarowym firmy Intel Corporation w Stanach Zjednoczonych i innych krajach. Microsoft, Windows, Windows NT i Windows Vista są znakami towarowymi firmy Microsoft zastrzeżonymi w Stanach Zjednoczonych. Nazwa Oracle jest zastrzeżonym znakiem towarowym firmy Oracle Corporation i/lub jej podmiotów stowarzyszonych. Java jest znakiem towarowym firmy Sun Microsostems Inc. zastrzeżonym w Stanach Zjednoczonych.

4AA1-1390ENW, lipiec 2008

Technologia poprawiająca wyniki finansowe przedsiębiorstwa

Page 2: Automatyzacja wg HP

Współczesne przedsiębiorstwa korzystają z bardzo złożonych infrastruktur przetwarzania danych. Typowe przedsiębiorstwo może używać wielu aplikacji, które zostały opracowane z myślą o współpracy z różnymi systemami operacyjnymi. Aplikacje te korzystają z wielu różnych interfejsów klientów i obejmują liczne procesy biznesowe, mając kontakt z wieloma osobnymi zestawami danych. Testowanie wszystkich możliwych permutacji tych elementów to niezwykle złożone przedsięwzięcie, obejmujące setki tysięcy scenariuszy testowych.

W przypadku awarii oprogramowania koszty mogą być bardzo duże — od utraconych przychodów ze sprzedaży, poprzez mniejszą wydajność pracowników, do niezadowolenia klientów oraz spadku motywacji zespołów programistów i specjalistów z działów kontroli jakości. Im później błędy są wykrywane w ramach procesu programowania, tym większe koszty generują. Błąd wykryty w środowisku produkcyjnym może generować ponad 100 razy większe koszty jego usunięcia niż ten sam błąd wykryty wcześniej, w fazie projektowania.

Automatyzacja jest kluczem do zwiększenia szybkości, precyzji i elastyczności procesu testowania oprogramowania. Umożliwia ona firmom wcześniejsze wykrywanie i usuwanie większej liczby usterek.

Korzyści wynikające ze zautomatyzowanych testów funkcjonalnych

Automatyzacja testów funkcjonalnych przynosi wiele korzyści. Należą do nich:

• ograniczenie ryzyka — dzięki rozszerzeniu zakresu testów automatyzacja testów funkcjonalnych ogranicza ryzyko błędów produkcyjnych i zwiększa zwrot z inwestycji;

• szybsza realizacja testów — komputery są w stanie wykonać skrypty testów funkcjonalnych nieporównywalnie szybciej niż ludzie, dlatego dzięki automatyzacji można przeprowadzić większą liczbę testów w krótszym czasie; w określonym czasie można przetestować większą liczbę aplikacji, dzięki czemu większa liczba projektów zostanie zrealizowana w terminie; w przeciwieństwie do ludzi, komputery pracują 24 godziny na dobę, w nocy, w weekendy i w święta; nie męczą się ani nie nudzą; nie zakładają, że dana funkcja działa poprawnie, a inna nie; w tym przypadku zwrot z inwestycji można wyrazić w jednostkach czasu i dniach pracy;

• większy zakres testów — narzędzia do zautomatyzowanych testów funkcjonalnych obsługują skrypty testów w ramach wszystkich popularnych przeglądarek, systemów operacyjnych itp.; Realizacja testów regresyjnych ciągle modyfikowanych aplikacji i środowisk za pomocą zautomatyzowanych narzędzi jest o wiele prostsza niż poprzez procesy realizowane ręcznie; natomiast dzięki funkcjom zintegrowanych arkuszy kalkulacyjnych opartych na danych zautomatyzowane narzędzia testowe umożliwiają programistom i działom kontroli jakości wykonywanie obliczeń, manipulowanie zestawami danych i szybkie tworzenie wielu iteracji testów, co pozwala rozszerzyć zakres poszczególnych przypadków testowych; zautomatyzowane narzędzia testowe pozwalają szybko emulować dowolną kombinację transakcji oraz dowolne obciążenie generowane przez użytkownika;

• większa dokładność testów i szybsze wykrywanie większej liczby błędów — automatyzacja testów ułatwia programistom replikację i dokumentowanie błędów oprogramowania, co skraca procesy programowania i ułatwia weryfikowanie poprawności funkcjonowania we wszystkich środowiskach, zestawach danych i procesach biznesowych;

Więcej informacji na temat rozwiązań HP do testowania funkcjonalnego można znaleźć pod adresem:

www.hp.com/go/software.

© Copyright 2006 –2008 Hewlett-Packard Development Company, L.P. Informacje zawarte w niniejszym dokumencie mogą ulec zmianie bez powiadomienia. Jedyne warunki gwarancji na produkty i usługi HP są określone w kartach gwarancyjnych dostarczanych wraz z tymi produktami lub usługami. Żadne treści zawarte w niniejszej publikacji nie mogą być rozumiane jako udzielenie dodatkowej gwarancji. HP nie ponosi odpowiedzialności za błędy techniczne lub redakcyjne ani pominięcia w niniejszym dokumencie.

Intel jest znakiem towarowym firmy Intel Corporation w Stanach Zjednoczonych i innych krajach. Microsoft, Windows, Windows NT i Windows Vista są znakami towarowymi firmy Microsoft zastrzeżonymi w Stanach Zjednoczonych. Nazwa Oracle jest zastrzeżonym znakiem towarowym firmy Oracle Corporation i/lub jej podmiotów stowarzyszonych. Java jest znakiem towarowym firmy Sun Microsostems Inc. zastrzeżonym w Stanach Zjednoczonych.

4AA1-1390ENW, lipiec 2008

Technologia poprawiająca wyniki finansowe przedsiębiorstwa

Page 3: Automatyzacja wg HP

• dostęp do sformalizowanych procesów — wprowadzenie zautomatyzowanych testów zachęca zespoły testowe do sformalizowania realizowanych procesów, co przekłada się na większą spójność testów i większą dokładność dokumentacji;

• łatwiejsze ponowne wykorzystanie testów — po utworzeniu skryptów testów programiści mogą ich użyć, ponownie je wykorzystać i dodać do pakietu testowego podczas modyfikowania tworzonej aplikacji; nie trzeba ponownie tworzyć skryptów w celu przetestowania tych samych funkcji w każdej wersji aplikacji;

• obsługa wdrożonego oprogramowania ERP/CRM — coraz większa liczba przedsiębiorstw wdraża rozwiązania ERP/CRM, dlatego kompleksowe testy regresyjne muszą być realizowane coraz częściej, a ich znaczenie ciągle rośnie.

Jak określić zwrot z inwestycji w zautomatyzowane testy

Zwrot z każdej inwestycji można obliczyć za pomocą następującego wzoru:

Zwrot z inwestycji (ROI) = Wartość bieżąca netto inwestycji/Całkowity koszt początkowy

W przypadku automatyzacji testów funkcjonalnych koszty są wymierne, ale wartość bieżąca netto zawiera również czynniki niewymierne. Najskuteczniejszym sposobem jest jak najprecyzyjniejsze określenie kosztów związanych z kosztami twardymi, a następnie porównanie ich do korzyści wynikających z automatyzacji testów, związanych z kosztami miękkimi i twardymi.

Koszty związane z płatnościami twardymi, które należy uwzględnić w kalkulacji zwrotu z inwestycji, obejmują:

• koszty zakupu — koszty zakupu oprogramowania do automatyzacji testów;

• koszty sprzętu — koszty sprzętu potrzebnego do prowadzenia testów funkcjonalnych; zazwyczaj do prowadzenia testów funkcjonalnych nie trzeba kupować specjalistycznego sprzętu, pod warunkiem że tester ma dostęp do standardowego komputera biurkowego lub stacji roboczej z portem Ethernet.

• koszty pracy — jeden z elementów kosztów personelu przeszkolonego do tworzenia skryptów przypadków testowych lub opracowywania testów ręcznych, obejmujący koszty rekrutacji, zatrudnienia, wynagradzania i utrzymania wyszkolonych specjalistów;

• koszty szkoleń — w zależności od wybranego rozwiązania do automatyzacji testów użytkownik może wymagać gruntownego przeszkolenia, dzięki któremu zdobędzie umiejętności tworzenia skryptów zautomatyzowanych testów; w ramach alternatywy przedsiębiorstwa mogą skorzystać z oferty

Więcej informacji na temat rozwiązań HP do testowania funkcjonalnego można znaleźć pod adresem:

www.hp.com/go/software.

© Copyright 2006 –2008 Hewlett-Packard Development Company, L.P. Informacje zawarte w niniejszym dokumencie mogą ulec zmianie bez powiadomienia. Jedyne warunki gwarancji na produkty i usługi HP są określone w kartach gwarancyjnych dostarczanych wraz z tymi produktami lub usługami. Żadne treści zawarte w niniejszej publikacji nie mogą być rozumiane jako udzielenie dodatkowej gwarancji. HP nie ponosi odpowiedzialności za błędy techniczne lub redakcyjne ani pominięcia w niniejszym dokumencie.

Intel jest znakiem towarowym firmy Intel Corporation w Stanach Zjednoczonych i innych krajach. Microsoft, Windows, Windows NT i Windows Vista są znakami towarowymi firmy Microsoft zastrzeżonymi w Stanach Zjednoczonych. Nazwa Oracle jest zastrzeżonym znakiem towarowym firmy Oracle Corporation i/lub jej podmiotów stowarzyszonych. Java jest znakiem towarowym firmy Sun Microsostems Inc. zastrzeżonym w Stanach Zjednoczonych.

4AA1-1390ENW, lipiec 2008

Technologia poprawiająca wyniki finansowe przedsiębiorstwa

Page 4: Automatyzacja wg HP

profesjonalnych firm usługowych, które zajmą się początkowym etapem tworzenia zautomatyzowanych testów.

Analizując potencjalne korzyści związane z automatyzacją, należy również rozważyć korzyści niewymierne, takie jak wyższy poziom motywacji i satysfakcji zawodowej wśród testerów, większe zadowolenie i lojalność klientów oraz poprawa wizerunku oprogramowania wśród użytkowników.

Podsumowanie

Testowanie funkcjonalne nie musi być czasochłonnym ani kosztownym przedsięwzięciem. Dzięki automatyzacji testowania funkcjonalnego przedsiębiorstwo może wykonać znaczny krok naprzód, w kierunku usprawnienia zautomatyzowanych procesów biznesowych. Zespoły programistów i specjalistów ds. kontroli jakości mogą poprawić szybkość i precyzję procesów testowych, a dział informatyczny może uzyskać wyższy zwrot z inwestycji w projekty tworzenia oprogramowania, przy jednoczesnym ograniczeniu ryzyka.

Wybierając oprogramowanie HP QuickTest Professional lub HP Service Test jako platformę do automatyzacji testów, przedsiębiorstwo może wykorzystać zalety jednego z najbardziej zaawansowanych, a jednocześnie najprostszych w obsłudze rozwiązań do testowania funkcjonalnego, dostępnych obecnie na rynku.

Więcej informacji na temat rozwiązań HP do testowania funkcjonalnego można znaleźć pod adresem:

www.hp.com/go/software.

© Copyright 2006 –2008 Hewlett-Packard Development Company, L.P. Informacje zawarte w niniejszym dokumencie mogą ulec zmianie bez powiadomienia. Jedyne warunki gwarancji na produkty i usługi HP są określone w kartach gwarancyjnych dostarczanych wraz z tymi produktami lub usługami. Żadne treści zawarte w niniejszej publikacji nie mogą być rozumiane jako udzielenie dodatkowej gwarancji. HP nie ponosi odpowiedzialności za błędy techniczne lub redakcyjne ani pominięcia w niniejszym dokumencie.

Intel jest znakiem towarowym firmy Intel Corporation w Stanach Zjednoczonych i innych krajach. Microsoft, Windows, Windows NT i Windows Vista są znakami towarowymi firmy Microsoft zastrzeżonymi w Stanach Zjednoczonych. Nazwa Oracle jest zastrzeżonym znakiem towarowym firmy Oracle Corporation i/lub jej podmiotów stowarzyszonych. Java jest znakiem towarowym firmy Sun Microsostems Inc. zastrzeżonym w Stanach Zjednoczonych.

4AA1-1390ENW, lipiec 2008

Technologia poprawiająca wyniki finansowe przedsiębiorstwa