Kód kurzu: ATSE« Krok zpět

Efektivní automatizované testy na platformě Selenium

Naučte se vytvářet efektivní a stabilní automatizované testy pomocí frameworku Selenium WebDriver

 DatumDnůCena kurzuCena materiálůJazyk výukyLokalita 
19.10.2017 2 12 500 CZK - Český jazyk Praha - Tesena
 
22.1.2018 2 12 500 CZK - Český jazyk Praha - Tesena
 

PobočkaDnůCena kurzuCena materiálůITB
Praha2 12 500 CZK - 0

Co Vás naučíme

Funguje automatizace testů založená na front-endovém rozhraní testované aplikace? Ano, pokud takové testy vhodně navrhneme a implementujeme, fungují velmi dobře. Na tomto školení si ukážeme jak na to.

Pokud se zeptáte kolegů, kteří mají předchozí zkušenost s automatizací testů „jaké jsou největší problémy této technologie“, odpověď bude velmi pravděpodobně „údržba“. Skutečně, je to tak. Nejvíce se potýkáme se změnami testované aplikace, které způsobí, že naše skripty přestanou být aktuální. Takové změny jsou přirozenou součástí vývoje softwaru, pro vývojáře testů ale představují problém: způsobují režii spojenou s údržbou testů. A tato režie, pokud je velká, může občas vést i k neúspěchu automatizace testování pro daný projekt.

Pokud automatizované testy vytváříme naivním způsobem, tato režie bude velká. Potřebujeme se naučit, jak ji snížit a proto, jakmile se na tomto kurzu naučíme základy, brzy přejdeme k pokročilejšímu strukturování testů. Spolu s tím se naučíme řadu postupů, pomocí kterých se dá tato režie snížit. Kombinací všech těchto postupů dohromady se naučíme psát dobře strukturovaný a ekonomicky efektivní kód, který výrazně přispěje k úspěchu automatizace vašich testů.

Na tomto kurzu budeme používat platformu Selenium WebDriver, spolehlivé open-source řešení pro automatizované testy. Kromě konceptů a postupů pro strukturování testů se samozřejmě také naučíme WebDriver API a vhodné postupy, jak zkombinovat WebDriver s frameworkem JUnit pro spouštění testů.

To vše se naučíme pomocí interaktivních praktických příkladů: účastníci kurzu budou programovat vlastní kód testů pomocí předpřipravených příkladů, za podpory dvou zkušených specialistů, kteří mají zkušenosti jak z řady projektů automatizace testů, tak z vývoje vlastních rozšíření platformy Selenium WebDriver a výzkumu a vývoje v této oblasti.

Požadované vybavení

Vlastní notebook s aktuálním IDE pro vývoj v Javě a podporou Maven a JUnit (doporučujeme IntelliJ IDEA, ale není podmínkou). Zbytek nainstalujeme pomocí Maven na začátku školení. Předpřipravené kódy automatických testů, které budou účastníci v průběhu kurzu dále rozvíjet, budou předány pomocí sdíleného webového adresáře. 

Lektor

Miroslav Bureš
Konzultant a lektor, který se zabývá vývojem efektivnějších metod pro testování softwaru.
Za posledních více než 10 let řídil testování na několika velkých transformačních a integračních projektech, vedl testovací oddělení v Capgemini CZ a SK, spolupracoval s tvůrci metodiky TMAP, revidoval a konzultoval testovací procesy několika větších společností, nastavoval procesy pro automatizaci testů a supervizoval projekty vývoje těchto testů – a kromě toho vedl i řadu školení v těchto oblastech.
Se skupinou několika nadšenců do testování nedávno dokončil novou českou knihu o testování: „Efektivní testování softwaru“, vydá Grada v průběhu podzimu 2016.
Posledních pět let se zároveň věnuje výzkumu a vývoji v testování softwaru. Vhodné metody a automatická podpora může výrazně ušetřit čas a zvýšit důvěru ve vytvořené testy – od jejich návrhu až po jejich vykonávání. S jeho PhD studenty vylepšuje současné metody a technologie pro automatizované testy, zabývá se možnostmi, jak zvýšit efektivitu metody Exploratory testing pomocí vhodné automatické podpory, nebo vyvíjí účinnější techniky pro testování business procesů a konzistence dat v rozsáhlejších systémech.
Na témata efektivního testování softwaru založil a přednáší i dva univerzitní kurzy, zabývající se od základů dobrých testovacích principů až po pokročilá témata, týkající se automatizace testů a metod pro vytváření efektivních testovacích scénářů.

Osnova kurzu

  • Specifika, silné stránky a omezení automatizovaných testů
  • Ekonomika automatizace testů
  • Jaký je vhodný scope pro automatizaci testů? Má smysl automatizovat manuální testy 1:1?
  • První test: struktura arrange-act-assert
  • Znovupoužitelné objekty: začněme je používat rovnou od začátku
  • Objekt WebDriver, možnosti platformy, nejčastěji používané API
  • Ovládání různých prohlížečů, úvod do testování mobilních aplikací
  • Strategie pro lokalizaci elementů: co je vhodné a co ne, jak psát efektivní XPath výrazy
  • Synchronizace testů s testovanou aplikací (včetně AJAX a podobných složitějších prvků)
  • Propojení WebDriver s JUnit / TestNG: jak to udělat efektivně, limity xUnit frameworků a jak je obejít
  • Zpracování nalezených chyb, sestavování chybového reportu, screenshoty
  • Strukturování větší sady testů: vrstvená architektura
  • Návrhové vzory PageObject a PageFactory
  • Pokročilejší PageObject: více business logiky a flexibility při inicializaci elementů
  • Parametrizace testovacích dat, použití data grids
  • Větší sada testů: vytvoření jednotného úložiště testovacích dat?
  • Organizace větší sady testů: Test suites, subsety podle typů testu, znovupoužitelné testy
  • Implementace delších (E2E) testů: napojovací body, předávání testovacích dat
  • Pokročilejší koncepty: použití Java generics pro zrychlení vývoje, SmartDriver přístup
  • Spouštěcí plán testů, technické způsoby jak naplánovat a spouštět testy
  • Přehled quick-wins, dobrých a špatných postupů

Předchozí kurzy

žádný předchozí kurz

Navazující kurzy

žádný navazující kurz
K tomuto kurzu není dostupná žádná literatura.
Uvedené ceny jsou bez DPH.