1 / 20

Testování aplikací

Testování aplikací. Michael Juřek Software Architect Microsoft s.r.o. Agenda. Proč testovat aplikace? Funkční testování Zátěžové testování. Stokr át více. Zdroj : Ron Patton , Software Testing, SAMS , 2005. Pro č funkční testování?. Funguje aplikace podle požadavků?

isra
Download Presentation

Testování aplikací

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Testování aplikací Michael JuřekSoftware ArchitectMicrosoft s.r.o.

  2. Agenda Proč testovat aplikace? Funkční testování Zátěžové testování

  3. Stokrát více... Zdroj: Ron Patton, Software Testing, SAMS, 2005

  4. Proč funkční testování? Funguje aplikace podle požadavků? Počítám se všemi alternativami? Fungují nové věci dobře? Nepřestaly kvůli novým věcem fungovat staré věci?

  5. Proč zátěžové testování? Je moje aplikace dostatečně rychlá? Zvládne moje aplikace dostatečný počet uživatelů? Co když bude něco špatně – zvládne to má aplikace? Vydrží moje aplikace pod zátěží dostatečně dlouho?

  6. Agenda Proč testovat aplikace? Funkční testování Zátěžové testování

  7. Definici testování tvoří… Testovací případy(test case) • Mají vazbu na požadavky (requirement, user story) Statické nebodynamické množiny testovacích případů (test suite) Testované konfigurace • Např. Windows XP US, Windows 7 CZ Testovacích plány • Konfigurace sběru dat a dalších věcí • Jeden nebo více testovacích běhů (test run) • Běh tvoří sada testovacích případů, testovací konfigurace a nastavení Spouštění testů z testovacího plánu Sledování průběhu testů a monitorování chyb

  8. Vlastní spuštění testu Vykonává testovací případy Sbírá informace ze systému • Diagnostika, konfigurace, protokol událostí, analýza dopadu Volitelně zachycuje videozáznam a snímky obrazovky Sbírá informace od testera • Výsledky kroků, uživatelské akce, komentáře Formulář pro zadání chyby včetně kontextu Při opakovaném spuštění je možné automaticky vykonat kroky vykonané při prvním spuštění („fast forward“)

  9. Sledování a vyhodnocení testů Průběh testování • Veškerá data ukládána v datovém skladu • Připravené reporty anebo vlastní analýzy Dokumentace chyb • Čím více informací o chybě, tím lepší kontext • Čím lepší kontext, tím větší šance na zjištění příčiny • Vytvořit dostatečné informace ručně je pracné • Automatický sběr dat řeší tento problém

  10. demo Funkční testování aplikace

  11. Virtualizace testovacího prostředí Sdílení kontextu chyby mezi vývojářem a testerem • Pomocí snapshotu virtuálního stroje Výrazné snížení času a pracnosti přípravy testovacího prostředí • Automatické klonování • Samoobslužné vytváření bez nutnosti znalosti virtualizačních produktů Paralelní běh více instancí testovacího prostředí Aneb upoutávka na moji zítřejší prezentaci

  12. Agenda Proč testovat aplikace? Funkční testování Zátěžové testování

  13. Zátěžové testování Mnohonásobné paralelní provádění: • unittestů – testují cokoliv, co je vývojář schopen testovat • web testů – testují web stránky Sběr hodnot přednastavených výkonových čítačů Porovnání hodnot s nastavenými mezními hodnotami Možnost nastavení mixu scénářů, prohlížečů, kvality síťového spojení Flexibilní nastavení zátěže: • Konstantní • Postupné zvyšování • Zvyšování až do splnění nějakého cíle

  14. Do 250 současných uživatelů VSUltimate

  15. Pro tisíce uživatelů… VSUltimate Test Controller Test Agent Test Agent Test Agent Test Agent

  16. Zátěž – unit testy Lze testovat cokoliv, co je vývojář schopen zavolat z kódu: • Výkonnost databáze • Rychlost výpočtů • Rychlost čtení z diskového pole • …

  17. Zátěž – web testy Nahraná posloupnost webových stránek, tj. HTTP komunikace prohlížeč – web server Možnosti: • Validace výsledků • Extrakce hodnot pro další použití • Veškerá HTTP komunikace (web služby, AJAX apod.) • Variace zádavaných hodnot (data-driven test) • Simulace šířky pásma, latence, ztráty paketů • Absolutní rozšiřitelnost průběhu testu

  18. demo Zátěžové testování aplikace

  19. Zdroje a jiné Zkušební verze Visual Studia • http://www.microsoft.com/visualstudio/en-us/download Krátká instruktážní videa • http://www.mstv.cz Pozvání na zítřek: • Testujeme aplikace ve vevirtualizovaném prostředí, 11:20 – 12:20

  20. Závěrem Testování není zadarmo… … ale problémy, které dokáže eliminovat by stály mnohem víc Snižuje rizika Posiluje důvěru a právní jistoty dodavatele i odběratele Kontakt - mjurek@microsoft.com

More Related