Úvod do testování a verifikace

Podobné dokumenty
Testování softwaru - koncept kvality

Automatizace testování

Vývoj řízený testy Test Driven Development

Testování softwaru. 10. dubna Bořek Zelinka

Testování a verifikace softwaru

Formální Metody a Specifikace (LS 2011) Formální metody pro kyber-fyzikální systémy

Kvalita SW produktů. Jiří Sochor, Jaroslav Ráček 1

Testování SW produktů. Jiří Sochor, Jaroslav Ráček 1

Obsah. Úvod 9 Poděkování 10 Co je obsahem této knihy 10 Pro koho je tato kniha určena 11 Zpětná vazba od čtenářů 11 Errata 11

A7B36SI2 Tematický okruh SI11 Revidoval: Martin Kvetko

Chyby software. J. Sochor, J. Ráček 1

CASE. Jaroslav Žáček

1 Úvod 1.1 Vlastnosti programového vybavení (SW)

14 Úvod do plánování projektu Řízení projektu

14 Úvod do plánování projektu Řízení projektu

5 Požadavky a jejich specifikace

Účel, použití, analýza rizik Milan Turinský Únor 2018

Metriky softwarové kvality

CASE nástroje. Jaroslav Žáček

5 Požadavky a jejich specifikace

BMW FUTURE MOBILITY DEVELOPMENT CENTER (FMDC) Mikroregion Sokolov východ, Katharina Will, Petr Pospisil

A7B36SI2 Tematický okruh SI08 Revidoval: Martin Kvetko

PowerOPTI Řízení účinnosti tepelného cyklu

Analytické metody v motorsportu

WebWalker

KIV/ASWI 2007/2008 Techniky zajištění kvality software. Kvalita software Techniky včasné detekce

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Klasická metodologie testování

RDF DSPS ROZVOJ PORTÁLU

Zátěžové testy aplikací

Taguciho metody. Řízení jakosti

Rozvoj a údržba systémů

End-to-end testování. 26. dubna Bořek Zelinka

Národní informační středisko pro podporu jakosti

Metody analýzy modelů. Radek Pelánek

BI-TIS Případová studie

Tématické okruhy pro státní závěrečné zkoušky. Navazující magisterské studium. studijní obor "Management jakosti"

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Očekávaný vývoj managementu kvality v automobilovém průmyslu Jindřich Znamenáček

Management rizik v životním cyklu produktu

Obsah. Zpracoval:

12 Zajištění kvality programového vybavení

12 Zajištění kvality programového vybavení

ČÁST 1. Rozhodující koncepce odhadů. Co je Odhad? 25

VÝBĚR A HODNOCENÍ PROJEKTOVÝCH A NADPROJEKTOVÝCH UDÁLOSTÍ A RIZIK PRO JADERNÉ ELEKTRÁRNY

Pravděpodobnost v závislosti na proměnné x je zde modelován pomocí logistického modelu. exp x. x x x. log 1

Testování Java EE aplikací Petr Adámek

Simulace. Simulace dat. Parametry

Předmluva 11. Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14

Implementace a využití automatizovaného testování. Staňková Gabriela Home Credit International a.s. 4.listopadu, 2009

ŘÍZENÍ JAKOSTI ENVIRONMENTÁLNÍ MANAGEMENT BEZPEČNOST PRÁCE ING. PETRA ŠOTOLOVÁ

Informatika pro záchranu života

Komunikace mezi businessem a IT

ZMĚNA ČESKÉHO OBRANNÉHO STANDARDU. AAP-48, Ed. B, version 1

Klasická metodologie testování

Kybernetika a umělá inteligence, cvičení 10/11

CobiT. Control Objectives for Information and related Technology. Teplá u Mariánských Lázní, 6. října 2004

POČÍTAČOVÁ SIMULACE PODNIKOVÝCH PROCESŮ. Ing. V. Glombíková, PhD.

ISO/IEC/IEEE zavedena v ČSN ISO/IEC/IEEE ( ) Softwarové a systémové inženýrství Testování softwaru Část 1: Koncepty a definice

Úvod do problematiky měření

Organizace předmětu, podmínky pro získání klasifikovaného zápočtu

Tématické okruhy pro státní závěrečné zkoušky. Navazující magisterské studium. studijní obor "Management kvality"

Globální strategie, IT strategie, podnikové procesy. Jaroslav Žáček

Návrh softwarových systémů - architektura softwarových systémů

Sigma Metric: yes or no?

Řízení reálných projektů, agilní metodiky

Národní informační středisko pro podporu kvality

SPECIFIKA CERTIFIKACE PODLE ČSN EN ISO 9001:2001 V ORGANIZACÍCH, KTERÉ SE ZABÝVAJÍ VÝVOJEM SOFTWARE

Unifikovaný modelovací jazyk UML

Architektura softwarových systémů

Česká letecká servisní a. s.

Obsah Úvod Kapitola 1 Než začneme Kapitola 2 Práce s hromadnými daty před analýzou

SOFTWAROVÉ INŽENÝRSTVÍ 1

Základy navrhování průmyslových experimentů DOE

Životní cyklus rizik - identifikace.

ISO/IEC/IEEE zavedena v ČSN ISO/IEC/IEEE ( ) Softwarové a systémové inženýrství Testování softwaru Část 1: Koncepty a definice

ISO 9000, 20000, Informační management VIKMA07 Mgr. Jan Matula, PhD. III. blok

Metodika ověřování zařízení pro odbavovací a informační systémy ve veřejné osobní dopravě

Správná klinická praxe GCP ICH E6 R(2)

Odbor informatiky a provozu informačních technologií

Smysl metodiky IS/IT. Koncentrovaná zkušenost Checklist na nic nezapomeneme

MULTIMEDIÁLNÍ A HYPERMEDIÁLNÍ SYSTÉMY

10. Techniky formální verifikace a validace

Kvalita procesu vývoje SW. Jaroslav Žáček

Technická specifikace předmětu plnění:

Komunikační strategie a plán rozvoje portálu portal.gov.cz

Softwarový proces. Bohumír Zoubek, Tomáš Krátký

MANAGEMENT KYBERNETICKÉ BEZPEČNOSTI

Pravděpodobnost, náhoda, kostky

Základy navrhování průmyslových experimentů DOE

Centrum kompetence automobilového průmyslu Josefa Božka - AutoSympo a Kolokvium Božek až , Roztoky -

Návrh softwarových systémů - architektura softwarových systémů

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda

Lean Six Sigma Logistics Využití statistických metod ke zlepšení logistických proces

Úvodem Dříve les než stromy 3 Operace s maticemi

Ročníkový projekt. Jaroslav Žáček

Návod k požadavkům ISO 9001:2015 na dokumentované informace

Zajištění kvality programového vybavení - testování

Analytická specifikace a její zpracování

Získáte: Znalosti o cílech a formě analýzy požadavků Přehled o metodách analýzy rizik, jejich výhodách a nevýhodách Přehled o typech požadavků

Transkript:

Úvod do testování a verifikace Radek Mařík ČVUT FEL, K13133 November 28, 2010 Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 1 / 42

Obsah 1 Proč testovat Studie softwarových projektů Typické problémy vývoje softwaru 2 Testování softwaru Definice Testování a verifikace 3 Koncept teorie kvality Pojem kvality Taguchiho přístup ke kvalitě 4 Automatizace testování softwaru Proč (ne)automatizovat? Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 2 / 42

Proč testovat Studie softwarových projektů Studie softwarových projektů The Standish Group, 1994 studie 8 380 projektů, 31% softwarových projektů přerušena, náklady 53% dokončených projektů se pohybují okolo 189% původních odhadů, z těchto 53% pouze 42% obsahuje původní sadu navrhovaných vlastností a funkcí, pouze 9% z těchto projektů bylo ukončeno v dohodnuté době a ceně. Obecně 5 ze 6 softwarových projektů je neúspěšných, 1/3 projektů je přerušena, projekty předávány za dvojnásobnou cenu než dohodnuto, projekty se předávají za dvojnásobně dlouhou dobu než se plánuje. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 4 / 42

Proč testovat Vývoj úspěšnosti projektů (CHAOS) Studie softwarových projektů Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 5 / 42

Proč testovat Rozpočty projektů (CHAOS) Studie softwarových projektů 200 180 160 140 120 100 80 60 40 20 0 1994 1996 1998 2000 2002 2004 Series1 189 142 69 45 43 43 Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 6 / 42

Proč testovat Proces vývoje a proces testování Studie softwarových projektů Trendy Komplexita softwaru překotně stoupá. Jednoduchá modifikace implementace software může způsobit velké množství změn v testovacích skriptech. Nástroje Vývojáři používají pokročilé techniky jako průvodce, CASE nástroje. Testeři kódují každou řádku manuálně. Použití abstrakce Software používá abstraktní metody, aby pokryl velké množství případů. Testware se musí implementovat každý případ zvlášť. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 7 / 42

Proč testovat Studie softwarových projektů Požadované základní vlastnosti procesu testování Žádá se, stěžuje se na, diskutuje se,... Opakované použití: testovací metodika by neměla být vyvíjena pouze pro jediný projekt. Flexibilita: vyjádření nových konceptů, návrhových šablon. Adaptivita: malé modifikace v implementaci softwaru by měly být pokryty automatizovaně. Komplexita: pokrytí dostatečné části testovacích případů je často za možnostmi manuální přípravy. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 8 / 42

Proč testovat Studie softwarových projektů Požadované odvozené vlastnosti procesu testování Údržba: potřebné úsiĺı je nepřímo úměrné flexibilitě a adaptivitě, přímo úměrné komplexitě testovaného produktu. Prezentace stavu: dokumentace pravidelně obnovovaná, např. WWW stránky. Nástroje: integrovaná řešení adresující výše uvedené položky. Cena/čas: efektivnost vyjádřená pomocí výše uvedených položek. Proveditelnost: trh/cena/čas/zdroje/kvalita efektivnost. Nepřetržitý běh: rychlá odezva, několik fází (zahořovací,..., regresní, dokumentace pravidelně obnovovaná, např. WWW stránky. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 9 / 42

Proč testovat Ovlivňování výsledku projektu Studie softwarových projektů Zákazníci, zadavatelé, manažéři - hodnoty libovolných čtyř proměnných. Vývojový tým - výsledná hodnota zbývající páté proměnné. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 10 / 42

Ariane 5 Proč testovat Typické problémy vývoje softwaru Situace Řada motorů na tekuté a tuhé palivo nahrazena několika s větším tahem. 4.června, 1996, 40 s po startu ve výšce okolo 3700 m se nosič odklonil od své dráhy, rozlomil a explodoval. Raketa, nesené 4 satelity nepojištěny, 500 miliónů $. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 12 / 42

Selhání nosiče Ariane 5 Proč testovat Typické problémy vývoje softwaru Status testování Chyba Žádost o přetestování stabilizační plošiny převzaté z Ariane 4 v podmínkách Ariane 5 byla vetována CNES z důvodu vysokých nákladů. Sextant Avionique po havárii potvrdila, že by závadu svými testy detekovala. softwarová vyjímka v obou Stabilizačních referenčních systémech (SRI). nechráněný převod z 64bitového reálného čísla na 16bitové celé číslo. SRI má význam pouze před zvednutím nosiče, ačkoliv je operativní jestě dalších 50 s. přetečení nastalo z důvodu rozdílných drah. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 13 / 42

Shrnutí Arian 5 Proč testovat Typické problémy vývoje softwaru Typické chyby při procesu vývoje softwaru nedostatek času - veto na testování malé či chybně rozložené náklady - veto na testování, chybné nebo chybějící požadavky - jak dlouho by měl podsystém fungovat, chyby v kódu - nechráněné převody, opakované využití - změna specifikací, řada chyb vzniká striktním oddělením vývoje softwaru a jeho testování. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 14 / 42

Radiační předávkování Proč testovat Typické problémy vývoje softwaru Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 15 / 42

Therac 25 Proč testovat Typické problémy vývoje softwaru červen 1985 - leden 1987 lineární urychlovač používaný v lékařství k ozařování rakovinných nádorů, povrchové tkáně ozařovány elektrony, pro hlubší tkáně gama záření, 6 incidentů přezáření, z toho 3 smrtelné, 20000 rad místo 86 rad, systém reálného času vytvořený 1 programátorem, neexistující formální specifikace a testovací kritéria, hardwarové zámky nahrazeny programovými, pokud byla vstupní data změněna mezi 1 až 8 s, pak zářič a polohovací stůl pracovaly v různých módech, k nastavování logické proměnné použita inkrementace bytové proměnné. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 16 / 42

Shrnutí Therac 25 Proč testovat Typické problémy vývoje softwaru uživatelské rozhranní kontra bezpečnost, složitý návrh systémové testování není dostatečné, chybějící specifikace, typicky problémy systémů: paralelních (angl. parallel) souběžných (angl. concurrency). Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 17 / 42

Zkušenosti z chyb Proč testovat Typické problémy vývoje softwaru Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 18 / 42

Proslulé chyby Proč testovat Typické problémy vývoje softwaru Oběžná dráha Apollo 13: program testován za pomalu měnících se podmínek. Při velké dynamice došlo k vydělení nulou na netestované cestě. Mariner let k Venuši: 80 miliónů $, záměna za + vedla k odklonu z dráhy, Minutí Merkuru: proměnná Fortranu DO10I DO 10 I=1.5 DO 10 I=1,5 Selhání rakety Patriot: během Války v zálivu v 1991 kvůli kumulativní chybě v časové synchronizaci (ve skutečnosti: 0.34 s, 100 hodin; navrženo: 14 hodin), F16 simulace: letadlo se překlápělo při překročení rovníku, Návrh jaderné elektrárny: v roce 1979 muselo být 5 jaderných elektráren uzavřeno z důvodu poddimenzování potrubí, velikost vektoru počítána jako součet složek, modul byl napsán studentem na praxi. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 19 / 42

Testování softwaru Definice Testování softwaru - výchozí definice Hetzel 1973 Testování je proces určení věrohodnosti, že program či systém dělá to, co se o něj předpokládá. Myers 1979 Testování je proces spouštění programu či systému s úmyslem nalézt chyby. Hetzel 1983 Testování je jakákoliv aktivita s cílem vyhodnotit atribut či schopnost plnění požadovaných výsledků programem nebo systémem. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 21 / 42

Testování softwaru Definice Testování softwaru - přehled definic Testování je kontrola programů vzhledem ke specifikacím, nalézání chyb v programech, určení míry akceptování uživatelem, ujištění se o tom, že systém je připraven k používání, získání důvěry, že program pracuje, prezentace, že program běží správně, demonstrace toho, že program je bez chyb, porozumění omezení výkonnosti programu, učení se toho, co systém není schopen dělat, hodnocení schopností programu, verifikace dokumentace. Testování je měření kvality softwaru. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 22 / 42

Testování softwaru Testování kontra Verifikace Testování a verifikace Testování softwaru Neformální/formální oraculus pro validaci skutečných výsledků. Řízené vzorkování chování softwaru za účelem snížení pravděpodobnosti selhání softwaru či míry nespokojenosti zákazníka. Verifikace softwaru Založená na formálních modelech softwaru. Matematický důkaz, že model softwaru je správný. Pouze omezená množina použitelných technologíı: Vnořený software založený na konečných automatech. Verifikace protokolů. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 24 / 42

Verifikace a Validace Testování softwaru [Kit95, KFN93] Testování a verifikace Verifikace Validace dle definice IEEE/ANSI, je proces hodnocení systému či komponenty s cílem určit, zda produkty dané vývojové fáze splňují podmínky dané na začátku této fáze. Program se verifikuje vzhledem k nejbĺıže určujícím dokumentům nebo specifikacím. Jestliže existuje externí specifikace, pak funkční test verifikuje program vůči této specifikaci. dle definice IEEE/ANSI, je proces hodnocení systému či komponenty během nebo ke konci vývojového procesu s cílem určit, zda splňuje specifikované požadavky. Program je validován vůči publikovaným požadavkům uživatele nebo systémovým požadavkům. Testování = verifikace + validace testování bílé + černé skříňky Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 25 / 42

Definice kvality Koncept teorie kvality Pojem kvality Rozsah od inženýrských specifikací na úrovni dílny až po definice na úrovni společnosti: Webster s New World Dictionary Kvalita je fyzická či jiná charakteristika, která definuje základní podstatu věci či jednu z jejích vyznačných vlastností. Crosby 1979 Kvalita je mírou souhlasu s požadavky. ISO 9000 Kvalita je souhrn vlastností a charakteristik produktu či služby, která se týká schopnosti uspokojit určené nebo vyplývající potřeb. Taguchi 1986 Kvalita je ztráta, kterou produkt způsobí společnosti po jeho dodání, způsobenou funkčními změnami a škodlivými účinky mimo těch, které vyplývají z vlastních funkcí. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 27 / 42

Aspekty kvality Koncept teorie kvality Pojem kvality operační podmínky - výkonnost v krátkodobém horizontu, spolehlivost - dlouhodobý horizont, pohled zákazníka, IKIWISI - Guaspari: I Know It When I See It [Kit95] Ideální kvalita, kterou zákazník může očekávat, je, že každý produkt poskytuje cílenou výkonnost kdykoliv je použit, za všech zamýšlených operačních podmínek, po celou dobu jeho předpokládaného života, se žádnými škodlivými postranními efekty. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 28 / 42

Kvalita softwaru Koncept teorie kvality Pojem kvality Kvalita znamená splňovat požadavky zákazníka : Faktory: Funkčnost (externí kvalita) správnost, spolehlivost, použitelnost, integrita. Inženýrské řešení (vnitřní kvalita) efektivita, testovatelnost, dokumentace, struktura. Adaptabilita (budoucí kvalita) flexibilita, opětné použití, údržba. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 29 / 42

Koncept kvality Koncept teorie kvality Pojem kvality Vztah mezi skutečnou kvalitou produktu pociťovanou zákazníkem a kvalitou měřenou na úrovni produkce: Factory production processes Product and process design Materials and supplies Components Product subsystems Finished product Factory test perfomance (Substitute performance) Factory test load Factory test method Factory test environment Transfer of ownership to customer Degree of correspondence Field usage processes Customer product configuration Customer requirements Field performance (True performance) Field environment Field operating method Field application Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 30 / 42

Koncept teorie kvality Proaktivita a reaktivita [Kol95] Taguchiho přístup ke kvalitě Reaktivní zabezpečení kvality je zaměřeno na detekování a korigování problémů, které již nastaly. zdůrazňuje vyhodnocování tradičních ztrát a statistické analýzy nashromážděných pozorování pro podporu akce. vede k omezování ztrát. Proaktivní zabezpečení kvality se orientuje na prevenci, dává důraz na znalost příčin a následků, riskové analýzy, zkušenosti, zdůvodnění akcí, staví na vyšší úrovni spekulace a risku, vede k urychlenému vývoji, umožňuje vyhnutí se ztrátám. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 32 / 42

Koncept teorie kvality Produkce řízená inspekcí Taguchiho přístup ke kvalitě Product inspected out 01 00 11 00 11 00 11 01 000 111 000 111 000000 111111 0000000000 1111111111 00000000000000 11111111111111 00000000000000 11111111111111 Lower specification Target Product inspected out 01 00 11 00 11 01 00 11 000 111 00 11 00000 11111 0000000000 1111111111 0000000000000 1111111111111 00000000000000 11111111111111 Upper specification Charakteristiky třídění/vyřazování produktů ležicích mimo povolený rozsah. ± specifikace Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 33 / 42

Produkce řízená cílem Koncept teorie kvality Taguchiho přístup ke kvalitě Lower specification Target Upper specification Charakteristiky zaměření na pozici cílového produktu a na redukci / řízení variace 6 sigma strategie uvedená Motorolou specifikační omezení produktu je ve vzdálenosti ± 6 násobku standardní odchylky produkce 2 defekty na miliardu produktů (za předpokladu normálního rozložení) 3.4 či méně defektů na milión produktů při ±1.5σ posunu středu Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 34 / 42

Ztrátová funkce kvality Koncept teorie kvality Taguchiho přístup ke kvalitě Ztrátová funkce inspekční strategie Loss $ Loss function LSL Ztrátová funkce cílové strategie Loss $ Target USL Quality characteristic measure Loss function Off target loss $ LSL Off target dimension Target USL Quality characteristic measure př. SONY v USA a Japonsku s rozdílnou kvalitou produktů Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 35 / 42

Koncept teorie kvality Kvadratická ztrátová funkce [Tag86] Taguchiho přístup ke kvalitě y... produkovaná hodnota výkonnostního indexu, m... hodnota indexu výkonosti požadovaná zákazníkem, L(y)... ztrátová funkce vzhledem k rozdílu mezi y a m, L(y) může být rozložena do Taylorovy řady okolo m: L(y) = L(m + y m) = L(m) + L (m) (y m) + L (m) (y m) 2 + 1! 2! za předpokladu L(m) = 0, L(y) je minimální při y = m, L (m) = 0, ztráta může být aproximována: L(y) k(y m) 2 k je neznámý koeficient, K určení k je potřeba vědět ztrátu D způsobenou odchylkou = y m. k = D/ Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 36 / 42

Automatizace testování softwaru Automatizace testování? Proč (ne)automatizovat? Výhody 1 Běh regresních testů na nové verzi programu. 2 Častější testování. 3 Provedení testu, který by jinak bylo obtížné provést. 4 Lepší využití prostředků. 5 Konzistence opakovatelnosti testů. 6 Vícenásobné použití testů. 7 Zkrácení doby uvedení na trh. Problémy 1 Nereálná očekávání. 2 Slabá testovací praxe. 3 Očekávání, že automatizovaný test nalezne mnoho nových defektů. typicky 85% manuální testování či návrh skriptu 4 Údržba automatizovaných testů. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 38 / 42

Porovnání postupů Automatizace testování softwaru Proč (ne)automatizovat? Vlastnost Manuální Automatizovaný Automatizovaný testování běh návrh Cena Nízká Vyšší Velmi vysoká přípravy (omezený Nízká testovací sady rozsah) (existující řešení) Kombinatorické Neschopné Velmi omezené Řízené pokrytí Flexibilita Vysoká (lidé) Zanedbatelná Vysoká a adaptivita (přejmenování) Cena běhu Vysoká Nízká Nízká Vstupy Vágní Vágní Modely softwaru Detekční Vysoká Nízká Střední schopnost Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 39 / 42

Problém údržby Automatizace testování softwaru Proč (ne)automatizovat? Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 40 / 42

Úsiĺı vývoje Automatizace testování softwaru Proč (ne)automatizovat? Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 41 / 42

Literatura I Automatizace testování softwaru Proč (ne)automatizovat? Cem Kaner, Jack Falk, and Hung Quoc Nguyen. Testing Computer Software. International Thomson Computer Press, second edition, 1993. Edward Kit. Software Testing in the Real World. Addison-Wesley, 1995. William J. Kolarik. Creating Quality: Concepts, Systems, Strategies, and Tools. McGRAW-HILL, INC., 1995. Genichi Taguchi. Introduction to Quality Engineering. Asian Productivity Organization, 4-14, Akasaka 8-chome, Minato-ku, Tokyo 107, Japan, 1986. Radek Mařík (marikr@felk.cvut.cz) Úvod do testování a verifikace November 28, 2010 42 / 42