e4609c23c0ee74a335059a99932042b8.ppt
- Количество слайдов: 21
Testování SW Petr Bergl Petr Zvěřina Certi. Con a. s.
Agenda • • • Proč testovat Co je testování Proces vývoje SW Druhy testování Automatizace testování Příklady z praxe
Proč testovat • Když se zapomene testovat. . – – Přistávací modul na Mars Hubbleův teleskop Obranný raketový systém Patriot Registr vozidel • Náklady na chyby
Co je testování • Úkolem testování je najít chyby v produktu – Co nejdříve – Zajistit jejich nápravu • Co je chyba – – SW nedělá co má dle specifikace SW dělá co nemá dle specifikace SW dělá něco, co není specifikováno SW nedělá něco, co není specifikováno, ale asi by to dělat měl – SW je nesrozumitelný, špatně se s ním pracuje apod.
Tester. . . • • Je zvídavý Rád se snaží přijít věcem na kloub Je neúnavný Je tvořivý Je perfekcionista Ma dobrý úsudek Je taktní (není posměváček) Je přesvědčivý a nedá se snadno odbýt
Test • Test je seznam kroků (akcí) • Musí být opakovatelný • Musí obsahovat ověřovací kroky, které se dají jednoznačně vyhodnotit
Test • Test je seznam kroků (akcí) • Musí být opakovatelný • Musí obsahovat ověřovací kroky, které se dají jednoznačně vyhodnotit Špatný test • Otevřete kalkulačku • Zadejte součet 1+1 a ověřte, že výsledek je správný
Test • Test je seznam kroků (akcí) • Musí být opakovatelný • Musí obsahovat ověřovací kroky, které se dají jednoznačně vyhodnotit Špatný test • Otevřete kalkulačku • Zadejte součet 1+1 a ověřte, že výsledek je správný Lepší test • Pomocí nabídky Start spusťte program Kalkulačka • Zaznamenejte verzi SW: ___ • Ujistěte se, že je použita standardní kalkulačka (ne „vědecká“) • Pomocí myši zadejte součet 1+1 • Pomocí myši stiskněte tlačítko „=„ • Ověřte, že se ve výsledkovém poli zobrazila hodnota „ 2. “
Kdo za chyby může
Proces vývoje SW • Model velkého třesku
Proces vývoje SW • Model vodopádu
Proces vývoje SW • Spirálový model
Náklady na testování vs. vývoj • Neexistuje zlaté pravidlo. V praxi od 90/10 do 10/90. • Špatně je když „Kluci nedělají chyby“ anebo „Oni si to developeři na konci projektu sami otestují, to bude OK“.
Metody testování • Žádný SW nejde otestovat úplně – Příliš mnoho vstupů – Příliš mnoho výstupů • Příklad kalkulačka ve Win – Početní operace – Backspace, Delete – Myš vs. klávesnice – Vědecká vs. standardní
Metody testování • Black box • White box • • • Stress testy Zátěžové testy Exploratory testy Systémové testování Unit testy Funkční testování
Automatické testy • Proč je používat • Dogma „chceme všechny testy automatizovat, abychom ušetřili“ je nesmysl • Správa testů, správa testů. . . • Nástroje – HP Quick Test, QF test, MS Test Professional – Selenium, PAMIE • Zajímavé linky – http: //seleniumhq. org/projects/ide/ – http: //www. certicon. cz/automaticke-testovani-uvod/
Testing in Automotive Industry • Two Essential System Parts: – Process/Diagnostic Modeler (IDE, Authoring part) • Used in Manufacturing. – Diagnostic Tool (Run Time) • Used in Workshops and Dealerships. • Data driven application.
Testing in Automotive Industry Diagnostic Flow Modeling (Vehicle Manufacture Employee) Diagnostic Flow Interpreter (Workshop Employee)
Testing in Automotive Industry • What needs to be tested? … and how? – Application Code DEV: Unit Testing TEST: VT, Automatic Testing, Stress • Authoring Tool • Run Time Tool (Standard and fixed features) • Data Interpreter – Diagnostic Flow Different scenarios can be modeled using different flows. Expected scenarios are tested + (random) stress testing. Frequent changes. Unit testing via modeled flows. (“assert” like testing). Not ideal!
Testing in Automotive Industry • Physical vs. simulated comms related issues. • Recent Project Notes: – Think twice before you start with test automation. • What? • When? – For critical features, the step validation should be used (Test Team -> Release Management).
Reference • Testování Softwaru – Ron Patton • Testing Computer Software, 2 nd Edition [Paperback] Cem Kaner (Author), Jack Falk (Author), Hung Q. Nguyen (Author) • Software Testing: A Craftsman's Approach, Third Edition [Hardcover] - Paul C. Jorgensen (Author) • Implementing Automated Software Testing: How to Save Time and Lower Costs While Raising Quality [Paperback] - Elfriede Dustin • Bad Software: What to Do When Software Fails [Bargain Price] [Paperback] - Cem Kaner (Author), David L. Pels (Author)
e4609c23c0ee74a335059a99932042b8.ppt