Testování METODOLOGIE PROJEKTOVÁNÍ Roman Danel VŠB–TU Ostrava Hornicko-geologická fakulta Institut ekonomiky a systémů řízení.

Slides:



Advertisements
Podobné prezentace
VN zdroj pro TILECAL vila Lanna
Advertisements

HRADLOVÁ POLE REKONFIGUROVATELNÁ ZA PROVOZU ZAŘÍZENÍ Soběslav Valach Ústav automatizace a měřicí techniky, FEKT, VUT Brno, Czech Republic.
Programovací jazyk C++
Základy informatiky úvod
Přednáška 11 Jiří Šebesta
Počítačové praktikum Úvod do předmětu
Základní koncepty systémové integrace
C++ Přednáška 1 Neobjektové rozšíření jazyka Základy vstupu a výstupu Ing. Jiří Kulhánek, kat. 352, VŠB TU Ostrava 2004.
Základy informatiky Ing. Roman Danel, Ph.D.
Implementace IS ZMVŠ Třebíč. Návrh Vstupem pro návrh je výsledek analýzy = data, funkce, stavy; odtud se doplní systémové funkce, další data, návrh komunikace,
METODOLOGIE PROJEKTOVÁNÍ NÁVRH IS PRO TECH. PROCESY Roman Danel VŠB – TU Ostrava HGF Institut ekonomiky a systémů řízení.
Architektura IS.
MS WORD pro pokročilé Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU Martin Komenda.
Základy informatiky Internet Ing. Roman Danel, Ph.D. Institut ekonomiky a systémů řízení Hornicko – geologická fakulta.
Tvorba webových aplikací
Podpora výuky a tvorby ER diagramu ve výukovém systému Barborka Petr Kopka VŠB – TU Ostrava, 2005.
State. State – kontext a problém Kontext  chování objektu má záviset na jeho stavu, který se typicky mění za běhu Neflexibilní řešení  metody obsahují.
Komplexní testové systémy a Systémy pro Evidenci pohybové aktivity
Auditorské postupy Činnosti před uzavřením smlouvy
Testování SW Filip Rubáček, 2013
Softwareová architektura
Richard Lipka Katedra informatiky a výpočetní techniky Fakulta aplikovaných věd Západočeská univerzita, Plzeň 1.
Gymnázium, Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Hodonín Software – úvod.
Plán testů Tým FelPay. Testování a kvalita obecně Přispívá ke správné funkci systému Přispívá ke správné funkci systému Snižuje finanční a časové ztráty.
Databázové systémy Přednáška č. 7 Uživatelské rozhraní.
4. Lekce Dílčí procesy funkčního testování
Principy posuzování kvality software podle ČSN ISO/IEC Praha Ing
A1PRG - Programování – Seminář Ing. Michal Ukazatele a pole 10 Verze
Základy informatiky Aplikační SW - licence Ing. Roman Danel, Ph.D. Institut ekonomiky a systémů řízení Hornicko – geologická fakulta.
Dokumentace objektů a zveřejnění funkcí
KIV/PPA1 cvičení 8 Cvičící: Pavel Bžoch. Osnova cvičení Objekty v Javě Třída Konstruktor Metody Metody a proměnné třídy x instance Program sestávající.
IB111 Programování a algoritmizace
Gymnázium, SOŠ a VOŠ Ledeč nad Sázavou I NFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE Ing. Jan Roubíček.
Dokumentace informačního systému
Úvod do JavaScriptu JavaScript je p JavaScript je programovací jazyk, který se používá na webových stránkách. JavaScript je typu KLIENT - KLIENT To znamená,
8 ZÓN 16 KLÁVESNIC 32 TYPŮ ZÓN 6 VÝSTUPŮ 10 UŽIVATELSKÝCH KÓDŮ 100 UDÁLOSTÍ V HISTORII DETEKTORY KLÁVESNICE G8.
Návrh navigačního a komunikačního MFD (zobrazení a ovládání navigačních, komunikačních a identifikačních zařízení na palubě letounu) České vysoké učení.
Diplomová práce Valašské muzeum v přírodě - virtuálně vedoucí: doc. Ing. Petr Rapant CSc. kontakt: konzultant VMP : Jaroslav Polášek.
Řízení projektů v IT METODOLOGIE PROJEKTOVÁNÍ
Jazyk XML v geoinformatice
Strategy. Motivace Různé algoritmy pro stejnou akci Hromada kódu v mnoha podmínkách Důsledky  Komplexnost  Špatná čitelnost  Těžká správa kódu  Těžka.
Detekce a odstraňování chyb Vývoj informačních systémů.
ANALÝZA A PROJEKTOVÁNÍ SYSTÉMŮ Testování SW Roman Danel VŠB–TU Ostrava Hornicko-geologická fakulta Institut ekonomiky a systémů řízení.
Základy informatiky Aplikační SW - licence Ing. Roman Danel, Ph.D. Institut ekonomiky a systémů řízení Hornicko – geologická fakulta.
Alternativní ovládání PC a okolí Nature Inspired Technologies Group Dept. of Cybernetics FEE CTU in Prague.
MIDAS – krátké představení Jan Růžička Institut ekonomiky a systémů řízení, odd. GIS Hornicko – geologická fakulta, VŠB-TU Ostrava 17.listopadu,
Databáze MS ACCESS 2010.
Využití sestavy Zobrazení a typy Části sestavy Vytvoření sestavy Ovládací prvky.
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o., Orlová-Lutyně AUTOR: Ing. Adéla Tomalová NÁZEV: Podpora výuky v technických oborech TEMA: Objektově orientované.
Návrh uživatelského rozhraní. Volba akcí uživatele – Systém menu Formát ukládání a modifikace dat – Vstupní formuláře Způsob formulování dotazů – SQL,
Testování aplikací v Javě Petr Adámek IBA CZ, s.r.o. © 2010.
SOFTWAROVÁ PODPORA PRO VYTVÁŘENÍ FUZZY MODELŮ Knihovna fuzzy procedur Ing. Petr Želasko, VŠB-TU Ostrava.
XML a datový standard Zdeněk Jirkovec Softwarové Aplikace a systémy.
TDD - Test Driven Development
Základy informatiky Aplikační SW - licence
SOLID principy v OOP návrhu
Miroslav Kovář Čeněk Škarda
Návrh, požadavky, implementace
Programovací jazyk C++
Návrhový vzor Flyweight
Tradiční metodiky vývoje softwaru
IAS 38 Nehmotná aktiva.
Demoverze QI Informace pro partnery DCC
Tradiční metody vývoje softwaru
Návrh, požadavky, implementace
METODOLOGIE PROJEKTOVÁNÍ
Web Application Scanning
Otevřená data v České republice
Přednášky z Distribuovaných systémů
Monitor Object 1.
Transkript prezentace:

Testování METODOLOGIE PROJEKTOVÁNÍ Roman Danel VŠB–TU Ostrava Hornicko-geologická fakulta Institut ekonomiky a systémů řízení

Literatura PATTON, R. Testování softwaru. Vyd. 1. Praha: Computer Press, 2002, xiv, 313 s. Programování. ISBN

Příklad chyby – Intel Pentium, 1994 ( / ) * – Sw chyba v čipu – , T. Nicely Náklady na odstranění chyby – náhrada prodaných čipů mil. USD

Typy testů BLACK BOX – WHITE BOX STATICKÉ - DYNAMICKÉ

Testy specifikace - chyby Obsahuje kvantifikátory vždy, nikdy, každý, žádný, všichni… Snaha někam dotlačit – je nabíledni, určitě, evidentně… Seznam není úplný – a tak dále, například… Vágní specifikace – někdy, něco, obvykle, zpravidla, většinou… Nejednoznačné kvantifikátory - dobrý, laciný, malý, stabilní If rozhodování bez specifikace else větve

Dynamické testování BLACK BOX Test-to-pass Test-to-fail

Grey Box Omezená znalost interních datových a programových struktur za účelem navrhnutí vhodných testovacích scénářů, které se realizují na úrovni black box. Translucent box Např. testy interface Webové aplikace

Testování vstupů Test hraničních podmínek Test subhraničních podmínek – testování vnitřních omezení Test výchozích, prázdných, nevyplněných a nulových hodnot Test na zadání neplatných nebo nesmyslných údajů

Test stavů – logiky aplikace Testování souběhu (Race Condition) Test opakováním Stress test – nejhorší možné podmínky Zátěžové testy (Load Test) – velký počet uživatelů/přístupů/transakcí…

Testování konfigurace Test, zda SW běží se všemi možnými kombinacemi HW Lze využít publikované HW specifikace

Testování kompatibility Souběh s jiným SW? Backward compatibility? Forward compatibility? (bude kompatibilní s budoucími verzemi)

Unit testy Vývojář Byly použity vhodné algoritmy, návrhové vzory Ověření správnosti fungování dílčí části kódu Unit – jednotka – samostatně testovatelná část aplikace Stubs, mock object, fakes, … Scrum, TDD – unit testy se vytvářejí před kódem

Unit testy Unit testy se používají při regresním testování Refactoring V OOP je unit test většinou test metod třídy Parametrizované unit testy – pak lze automatizovaně generovat vstupy (např. QuickCheck)

Unit testy – příklad testu v Javě public class TestAdder { // can it add the positive numbers 1 and 1? public void testSumPositiveNumbersOneAndOne() { Adder adder = new AdderImpl(); assert(adder.add(1, 1) == 2); } // can it add the positive numbers 1 and 2? public void testSumPositiveNumbersOneAndTwo() { Adder adder = new AdderImpl(); assert(adder.add(1, 2) == 3); }

Kód pro příklad interface Adder { int add(int a, int b); } class AdderImpl implements Adder { int add(int a, int b) { return a + b; }

Testování multilanguage podpory Lokalizace aplikace Lokalizace dat UNICODE Doporučení: texty nedávat do kódu

Multilanguage - formátování měrné jednotky číselné údaje měna (symbol a jeho umístění) zobrazení datumu zobrazení času (12/24) kalendář (juliánský, gregoriánský, arabský…) adresy (např. tvar PSČ) telefonní čísla velikost papíru a obálek pro tisk

Test použitelnosti Ovládání Konzistence Flexibilita Dodržování standardů Podpora pro handicapované Soulad s dokumentací

Další typy testů Downgrade test Test instalace Long term test Akceptační testy Performance test (rychlost odpovědi) Security test Recovery test - obnova Smoke test Regresní testy

Automatizace testování Monitor Ovladač (např. skript nahrazující klávesnici) Maketa (Stub) Emulátor Záznam maker Nástroje pro zátěžové testy Nástroje typu „hloupá opice“ - klikání Nástroje typu „polointeligentní opice“ – rozpozná nalezenou chybu Nástroje typu „inteligentní opice“ – ví, co dělá

Alfa a beta testy Zapojení externích osob do testování – testy reálnými uživateli Alfa testy – ve fázi, kdy se ještě očekávají závažné chyby v aplikaci Výhoda – lze otestovat i v HW kombinacích, které autor nemá k dispozici Nevýhoda – nemusí otestovat systematicky vše

Důvody neopravení chyby Není na to dost času Ve skutečnosti do není chyba Oprava je příliš riskantní Oprava nestojí za to