Automatyzacja testów

Co to jest automatyzacja testów?

Automatyzacja testów oprogramowania wykorzystuje specjalistyczne narzędzia do kontrolowania wykonywania testów i porównuje rzeczywiste wyniki z oczekiwanymi wynikami. Zazwyczaj testy regresji, które są powtarzalnymi czynnościami, są zautomatyzowane.

Narzędzia testowe nie tylko pomagają nam przeprowadzać testy regresyjne, ale także pomagają nam zautomatyzować generowanie konfiguracji danych, instalację produktu, interakcję GUI, rejestrowanie defektów itp. Narzędzia do automatyzacji są używane zarówno do testowania funkcjonalnego, jak i niefunkcjonalnego.

Kryteria doboru narzędzi:

Aby zautomatyzować dowolną aplikację, należy wziąć pod uwagę następujące parametry:

  • Możliwości oparte na danych

  • Możliwości debugowania i logowania

  • Niezależność od platformy

  • Rozszerzalność i dostosowywanie

  • Powiadomienia e-mailowe

  • Przyjazna dla kontroli wersji

  • Obsługa nienadzorowanych przebiegów testowych

Rodzaje ram:

Zazwyczaj istnieją 4 struktury automatyzacji testów, które są przyjmowane podczas automatyzacji aplikacji:

  • Struktura automatyzacji opartej na danych

  • Struktura automatyzacji oparta na słowach kluczowych

  • Modular Automation Framework

  • Hybrid Automation Framework

Popularne narzędzia używane do automatyzacji funkcjonalnej:

Produkt Sprzedawca URL
Szybki test Professional HP www.hp.com/go/qtp
Racjonalny robot IBM http://www-03.ibm.com/software/products/us/en/robot/
Kodowany interfejs użytkownika Microsoft http://msdn.microsoft.com/en-us/library/dd286726.aspx
Selen Otwarte źródło http://docs.seleniumhq.org/
Auto IT Otwarte źródło http://www.autoitscript.com/site/

Popularne narzędzia używane do automatyzacji niefunkcjonalnej:

Produkt Sprzedawca URL
Załaduj Runner HP www.hp.com/go/LoadRunner
Jmeter Apache jmeter.apache.org/
Apartament Burp PortSwigger http://portswigger.net/burp/
Acunetix Acunetix http://www.acunetix.com/