Automatyzacja Testowania w WEB 2.0



Podobne dokumenty
WebAii Automation Framework

Szkolenie: Podstawy automatyzacji z Selenium IDE

Automatyzacja testów aplikacji webowych w Selenium podstawy. Natalia Krawczyk

Zastosowanie darmowych rozwiązań do testów użyteczności aplikacji internetowych

Szczegółowy opis zamówienia:

Narzędzia podnoszące jakość procesu wytwarzania i wdrażania

Tester oprogramowania 2014/15 Tematy prac dyplomowych

Przegląd narzędzi do automatycznego testowania aplikacji internetowych. Jan Płoszczyca SKISR 2006

Automatyzacja narzędziami open source nie musi być trudna

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Wstęp do testowania : Szymon Ramczykowski

Spotkanie robocze PIONIER-CERT Poznań, Tomasz Nowak Zespół Bezpieczeństwa PCSS

REFERAT PRACY DYPLOMOWEJ

Imię, nazwisko i tytuł/stopień KOORDYNATORA (-ÓW) kursu/przedmiotu zatwierdzającego protokoły w systemie USOS Dr Adam Naumowicz

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Automatyczne testowanie aplikacji Android

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

Szkolenie: Testowanie wydajności (Performance Testing)

Google Testing. Radosław Smilgin, , TestWarez

Testowanie według modelu (MBT) Stowarzyszenie Inżynierii Wymagań wymagania.org.pl

Aplikacje WWW - lab 11

Testowanie aplikacji Java Servlets

Warsztat: "Automatyzacja testów (JAVA) - od podstaw"

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Zacznij Tu! Poznaj Microsoft Visual Basic. Michael Halvorson. Przekład: Joanna Zatorska

ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH

Dokumentacja użytkownika

Microsoft Test Manager

Programowanie MorphX Ax

Aplikacje WWW. Laboratorium z przedmiotu Aplikacje WWW - zestaw 01

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.

Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA

Flex 3. Piotr Strzelczyk Wydział EAIiE Katedra Automatyki. Kraków, 2008

Web Services w połączeniu z aplikacjami uruchamianymi na urządzeniach mobilnych

Spis treści. Podziękowania... xi Wstęp... xiii

Katalog szkoleń praktycznych Testowanie oprogramowania

Analiza i częściowa implementacja systemu elektronicznej wymiany danych na przykładzie e-faktury

Swing Application Framework czyli tam i z powrotem. Copyright Piotr Kochański & Erudis,

Projekt: Mikro zaprogramowane na sukces!

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

Ekspert MS SQL Server Oferta nr 00/08

VISUAL STUDIO 2008 I.NET 3.5 NOWOŚCI. Bartłomiej Filipek

ASP.NET MVC. Grzegorz Caban 20 stycznia 2009

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE

Studia podyplomowe. Programowanie na platformie Microsoft Visual Studio.NET

REFERAT PRACY DYPLMOWEJ. Temat pracy: Projekt i realizacja warstwy serwerowej gry internetowej

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

Aplikacje Internetowe

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

Rok akademicki: 2012/2013 Kod: ZIE s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA

Efektywne tworzenie aplikacji webowych z wykorzystaniem AngularJS, HTML5 i JavaScript

Microsoft.NET: LINQ to SQL, ASP.NET AJAX

IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

To sposób w jaki użytkownik wchodzi w interakcje z systemem. Środowisko graficzne używa kombinacji graficznych elementów(przyciski, okna, menu) i

5.14 JSP - Przykład z obiektami sesji Podsumowanie Słownik Zadanie... 86

RFP. Wymagania dla projektu. sklepu internetowego B2C dla firmy Oplot

System zarządzający grami programistycznymi Meridius

Splunk w akcji. Radosław Żak-Brodalko Solutions Architect Linux Polska Sp. z o.o.

Ćwiczenie 8. Kontrolki serwerowe

Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia

Aplikacje Internetowe

Szkolenie: Automatyzacja testowania

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

VectraPortal. VectraPortal. wersja Instrukcja użytkownika Podstawowa funkcjonalność serwisu. [czerwiec 2016]

Automatyzacja testowania oprogramowania. Automatyzacja testowania oprogramowania 1/36

Programowanie Komponentowe WebAPI

Podstawy programowania. Wprowadzenie

Zarządzanie testowaniem wspierane narzędziem HP Quality Center

I Podstawy Wprowadzenie do technologii Ajax Żądanie Odpowiedź XML 31 JSON 39

Testowanie aplikacji mobilnych z ukierunkowaniem na system Android

Spis treści. Wprowadzenie 13

Plan testów. Robert Dyczkowski, Piotr Findeisen, Filip Grzdkowski. 4 czerwca 2006

Programowanie.NET - kurs zaawansowany

Programowanie w Javie 2. Płock, 26 luty 2014 r.

Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

AUREA BPM HP Software. TECNA Sp. z o.o. Strona 1 z 7

Szkolenie wycofane z oferty. Programowanie w JavaScript (zawiera jquery)

Obiektowy model dokumentu. Katedra Mikroelektroniki i Technik Informatycznych

1 90 min. Aplikacje WWW Harmonogram spotkań, semestr zimowy (studia stacjonarne)

Szkolenie: JMeter w praktyce

Zapytanie ofertowe nr 1/IAP/2013 ( dotyczy modułu nr 1/IAP )

Projekt: Narzędzia zarządzania testowaniem badanie narzędzia

WorkingDoc CostControl: Precyzyjna kontrola kosztów wydruku na urządzeniach Grupy Ricoh

5-6. Struktura dokumentu html. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Spis wzorców. Działania użytkownika Strona 147 Obsługa większości Działań użytkownika za pomocą kodu JavaScript przy użyciu metod obsługi zdarzeń.

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2

Web frameworks do budowy aplikacji zgodnych z J2EE

Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski

Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia)

Usługa: Testowanie wydajności oprogramowania

Administrator Systemów SCADA

Instrukcja konfiguracji popularnych przeglądarek internetowych systemu Windows do pracy z urządzeniami INTERNEC serii i7 oraz i5.

Multi-projekt z przedmiotów Inżynieria oprogramowania, Współczesne bazy danych i Programowanie w języku Java

Transkrypt:

Automatyzacja Testowania w WEB 2.0 Wojciech Pająk, Radosław Smilgin XXIV Jesienne Spotkania PTI Wisła, 20-24 października 2008

Agenda Wprowadzenie do automatyzacji testowania Technologie WEB 2.0 Narzędzia do automatyzacji Przykłady Podsumowanie XXIV Jesienne Spotkaia PTI, 20-24 paźdz. 2008 Wisła

Czym jest automatyzacja testów? Symulacja działań użytkownika Identyfikacja elementów i wykonywanie na nich akcji Weryfikacja zdarzeń Logowanie błędów Raportowanie wyników Automatyczny test jest tylko tak dobry, jak zawarte w nim instrukcje weryfikujące.

Stosowane weryfikatory Asserty (twierdzenia) Porównywanie zrzutów ekranowych okien lub wybranych elementów strony Porównywanie stanów elementów strony Pomiar czasu Pomiar zużycia zasobów (serwer, przeglądarka)

Automatyzacja testów aplikacji WEB 2.0 Testy funkcjonalne Odwzorowanie działań użytkownika (UI) Wywoływanie zmian stanu elementów, zdarzeń (DOM) Wykonywanie tych samych testów na różnych przeglądarkach i ich wersjach Testy niefunkcjonalne Obciążenie (ilość użytkowników) Wydajność (czas przetwarzania żądań, zasoby) Bezpieczeństwo Testy użyteczności (?)

Co automatyzować? Testy, które są wykonywane często Testy, które są trudne do wykonania ręcznie Testy, które trwają długo Testy, które są wykonywane równolegle

Kiedy unikać automatyzacji? Testy są wykonywane rzadko Wyniki testów są trudne do zweryfikowania automatycznie (np. kolory) Programy podlegające testowaniu ulegają częstym zmianom

Automatyzacja dobre praktyki Organizacja testów Testy przygotowują warunki i sprzątają po sobie Używanie sprawdzonych weryfikacji Używanie negatywnych scenariuszy w testach Używanie różnych środowisk testowych Regularne wykonywanie testów Raportowanie i dystrybucja wyników

Najważniejsze Technologie WEB 2.0 XHTML AJAX/JavaScript SOAP XUL Webservices

Wymagane umiejętności testerów Web 2.0 HTML, DOM HTTP Podstawy programowania obiektowego (.NET, Java) Podstawy testów jednostkowych (NUnit, JUnit)

Popularne, darmowe narzędzia Automatyzacja testów funkcjonalnych WebAii Automation Framework Selenium

WebAii Automation Framework Darmowa biblioteka.net,.net framework 3.5 Automatyzacja testów funkcjonalnych aplikacji internetowych Można zastosować do testów wydajnościowych (performance) Wsparcie dla ASP.NET Zawiera przykłady w C# i VB.NET

WebAii.Technologie Biblioteka dedykowana do testów aplikacji Web 2.0 Rich Internet Applications (RIA) AJAX ASP.NET Obsługa ramek Obsługa okien dialogowych i pop-upów Pełen dostęp do struktury DOM

WebAii.Przeglądarki Wspólne API dla Internet Explorer 6 i 7, Firefox 2 i 3 Konieczna odpowiednia konfiguracja przeglądarek

WebAii.Środowisko NUnit lub Visual Studio Team System.NET framework 3.5, Visual Studio C# Express 2008 Primary Interop Assemblies (PIA) Firebug, Internet Explore Developer Toolbar

WebAii.Uruchamianie w NUnit

WebAii.Metodyka automatyzacji Kontrola przeglądarki Automatyzacja DOM Metody get pozwalające odczytać stan elementów Automatyzacja UI Założenia: Element zawsze musi być widoczny Desktop -> Mouse, KeyBoard, Metoda GetRectangle() dla każdego elementu DOM Podejście to można także stosować do okienek Win32 Sprawdza się doskonale przy drag & drop trudne do wykonania w DOM

WebAii.Wyszukiwanie elementów Notacja skrótowa Wyszukiwanie po zawartości (Content, np. kiedy nie ma innych atrybutów, lub ich wartości są dynamiczne) Wyszukiwanie zawężone (np. po elementach określonego typu: tabela, div) Wyszukiwanie przy użyciu Language Integrated Query (LINQ) Wzorce dla często występujących elementów Serializacja/Deserializacja (identyfikacja elementów w plikach XML)

WebAii.Akcje Klikanie elementów Akcje myszy na elementach Zaznaczanie/odznaczanie check boxów i radio buttonów Wywoływanie zdarzeń, np. OnClick, OnFocus Wykonywanie zrzutów ekranowych Wybieranie z elementów typu drop down Wykonywanie drag & drop

WebAii.Klasa HtmlWait Oczekiwanie na: stan kontrolki HTML (visible/not visible) zmianę stylu spełnienie lub nie dowolnego warunku

WebAii.Test Regions Logiczna segmentacja Niższe koszty utrzymania testów Wyizolowanie testów

WebAii.Ajax/JavaScript Synchronizacja Wywoływanie JavaScript Obsługa drag & drop Prawdziwa interakcja z interfejsem graficznym aplikacji (mysz, klawiatura)

WebAii.Integracja Konfiguracja.NET Logowanie VSTS unit testing framework, gotowe template y NUnit, template w VS Biblioteka utworzona w.net możliwa integracja z dowolną aplikacją.net

Selenium Darmowy dodatek do przeglądarki Firefox (2 i 3) Automatyzacja testów funkcjonalnych aplikacji internetowych Możliwość nagrywania testów Zapis testów w formacie HTML, eksport do popularnych języków programowania (m.in. C# i Java) Uruchamianie testów na wielu platformach i przeglądarkach jednocześnie

Selenium.Przeglądarki Aktualnie wsparcie jedynie dla przeglądarki Firefox w wersji 2 i 3

Selenium.Uruchamianie Testy uruchamiane są w dodatku przeglądarki Firefox

Selenium.Metodyka automatyzacji Kontrola przeglądarki Metody wait pozwalające na warunkowe oczekiwanie Metody store pozwalające odczytywać parametry elementów Automatyzacja DOM (składnia) Instrukcja Element aplikacji Wartość Click loginbutton label= Login

Selenium.Wyszukiwanie elementów Wyszukiwanie po id, typach, xpath, name Filtrowanie elementów Możliwość nagrywania testów Zapis testów w formacie HTML, eksport do popularnych języków programowania (m.in. C# i Java)

Selenium.Akcje Klikanie elementów Akcje myszy na elementach Zaznaczanie/odznaczanie check boxów i radio buttonów Wywoływanie zdarzeń, np. OnClick, OnFocus Wybieranie z elementów typu drop down Wykonywanie drag & drop

Selenium.Weryfikacje Metody verify Metody assert Metody wait

Przykłady użycia narzędzi WebAii Selenium

Dziękuję za uwagę Więcej informacji na: http://www.artoftest.com/webaiifxproduct.aspx http://selenium.openqa.org Pytania? Chętnie odpowiemy na Państwa zapytania drogą elektroniczną: kontakt@