Název:

Testování a dynamická analýza

Zkratka:ITS
Ak.rok:2018/2019
Semestr:letní
Studijní plán:
ProgramObor/
specializace
RočníkPovinnost
BIT-2.volitelný
IT-BC-3BIT-volitelný
IT-BC-3BIT2.volitelný
Vyučovací jazyk:čeština
Informace veřejné:http://www.fit.vutbr.cz/study/courses/ITS/public/
Kredity:5 kreditů
Ukončení:zápočet+zkouška (písemná)
Výuka:
hod./sempřednáškasem./cvič.lab. cvič.poč. cvič.jiná
Rozsah:2600026
 zkouškatestycvičenílaboratořeostatní
Body:6000040
Garant:Smrčka Aleš, Ing., Ph.D. (UITS)
Zástupce garanta:Lengál Ondřej, Ing., Ph.D. (UITS)
Přednášející:Smrčka Aleš, Ing., Ph.D. (UITS)
Cvičící:Smrčka Aleš, Ing., Ph.D. (UITS)
Fakulta:Fakulta informačních technologií VUT v Brně
Pracoviště:Ústav inteligentních systémů FIT VUT v Brně
Prerekvizity: 
Algoritmy (IAL), UIFS
Formální jazyky a překladače (IFJ), UIFS
Operační systémy (IOS), UITS
Rozvrh:
DenVýukaTýdenMístnostOdDoPSKSkupiny
Pozkouška - řádná2019-05-06D0207 12:0013:502BIA 2BIB 3BIT
Stzkouška - 2. oprava2019-06-05E105 11:0012:502BIA 2BIB 3BIT
Čtzkouška - 1. oprava2019-05-30E105 09:0010:502BIA 2BIB 3BIT
 
Cíle předmětu:
  Získat přehled o etapě verifikace softwarových systémů, pozornost se věnuje problematice dynamické analýzy programového vybavení. Získat praktické dovednosti s testováním software na úrovni potřebné pro osobu zodpovědnou za kvalitu produktu (QA testera). Zvládnutí tvorby automatizovaných testů různých aspektů verifikovaných programů. Získat přehled plánování a řízení testování.
Anotace:
  Specifikace testů. Kritéria pokrytí zdrojových kódů (EC, NC, EPC, PPC). Kritéria pokrytí logických výrazů (PC, CC, MCDC). Rozklad vstupní domény. Kritéria pokrytí vstupní domény. Black-box analýza. Sledování práce se sdílenými prostředky. Testování vícevláknových aplikací. Testování síťových aplikací. Testování GUI. Výkonnostní testování. Řízení testování.
Požadované prerekvizitní znalosti a dovednosti:
  formální jazyky a překladače, algoritmy, operační systémy
Získané dovednosti, znalosti a kompetence z předmětu:
  Student zná základní techniky testování software. Je schopen vytvářet efektivní testovací sady softwarových produktů. Umí analyzovat zdrojové kódy, zná typická slabá místa programu citlivá na výskyt chyb. Umí analyzovat chování software s konečným či nekonečným během bez znalosti jeho zdrojových kódů. Student umí testovat a/nebo analyzovat komunikaci programů, výkon programu, využití sdílených prostředků, práci s datovými úložištěmi a funkci grafického uživatelského rozhraní. Student umí systematickým způsobem hledat chyby v programech. Student zná základy plánování a řízení testování. Student se seznámí s odbornými termíny předmětu v anglickém jazyce.
Dovednosti, znalosti a kompetence obecné:
  Student se formou projektu naučí analyzovat software za účelem zvýšení jeho kvality. Získá dovednost tvorby testovacích sad a hledání chyb v programech.
Proč je předmět vyučován:
  Ověřování kvality softwaru je nedílnou součástí každého vývojového cyklu každého softwaru. Testování softwaru je v popředí při ověřování kvality. V době zvyšující se složitosti návrhů systémů se zvyšují i požadavky na automatizaci každé vývojové fáze včetně ověřování kvality. Studenti se v předmětu seznámí s problematikou systematického testování softwaru a naučí se základním přístupy k jeho automatizaci. Absolventi předmětu mají předpoklady pro pozici testera softwaru.
Osnova přednášek:
 
  1. Role testování a dynamické analýzy ve vývoji počítačových systémů. Vysvětlení pojmů. Modely testování. Požadavky na testy, specifikace testů a plán testování. Testy řízený vývoj.
  2. Metoda testování se znalostí zdrojových kódů. Kritéria pokrytí zdrojových kódů. Graf řízení toku. Kritéria pokrytí grafu. Kritéria datových toků.
  3. Vztah pokrytí grafu a zdrojových kódů. Vztah pokrytí datových toků a zdrojových kódů.
  4. Kritéria pokrytí logických výrazů.
  5. Vstupní doména a její modely. Kritéria pokrytí vstupní domény.
  6. Testování založené na syntaxi.
  7. Tvorba testů ze specifikace požadavků systému. Testování podle V-modelu.
  8. Kombinace testů. Lokalizace chyb z výsledků testování. Reportování chyb.
  9. Dynamická analýza programů bez znalosti zdrojových kódů. Analýza na základě sledování knihovních a systémových volání. Získávání grafu toku dat a řízení. Omezení sekvence událostí.
  10. Virtualizované prostředí pro dynamickou analýzu. Analýza využití sdílených prostředků. Kritéria pokrytí založená na využití sdílených prostředků.
  11. Testování vícevláknových aplikací.
  12. Testování síťových aplikací. Testování grafického uživatelského rozhraní a jeho automatizace. Testování nefunkcionálních vlastností systémů.
  13. Výkonnostní testování. Plánování a management testování. Náhled do základů statické analýzy.
Osnova ostatní - projekty, práce:
 
  1. Návrh testovací sady odpovídající zadanému testovacímu kritériu pro vybraný software.
  2. Implementace automatizované testovací sady.
Literatura referenční:
 
  • Ammann, P., Offutt, J.: Introduction to Software Testing. Cambridge University Press, 2008, 322 s. ISBN 978-0-511-39330-3.
Literatura studijní:
 
  • Myers, G. J., Sandler, C., Badgett, T.: The Art of Software Testing, 3. vydání. John Wiley & Sons, 2011, 256 s., ISBN 978-1118031964.
  • Spillner, A., Linz, A., Schaefer, H.: Software Testing Foundations : A Study Guide for the Certified Tester Exam. Rocky Nook Computing. 2014. p. 296. ISBN 9781937538422.
  • Kaner, C., James, B., Pettichord, B.: Lessons Learned in Software Testing: A Context-Driven Approach. Wiley Computer Publishing, 2002, 286 s., ISBN 0-471-08112-4.
  • Marick, B.: The Craft Of Software Testing, Subsystem Testing, Prentice Hall PTR, 1995, ISBN 0-13-177411-5.
  • Spillner, A., Linz, T., Schaefer, H.: Software Testing Foundations, 2. vydání, 2007, 296 s., ISBN 978-1-9339-5278-9.
  • Farrell-Vinay, P.: Manage Software Testing. Auerbach Publications, 2008, 537 s., ISBN 978-0-8493-9383-9.
Kontrolovaná výuka:
  Vypracování a obhajoba projektů v předepsaných termínech.
Průběžná kontrola studia:
  Za 2 projekty mohou studující získat až 40 bodů a za závěrečnou zkoušku až 60 bodů.
Podmínky zápočtu:
  Pro získání zápočtu musí student získat v součtu nejméně 15 bodů ze všech projektů.
 

Vaše IPv4 adresa: 3.88.156.58