Zadáno

Bakalářská práce č. 1 - 2019/2020

Zadání pro studijní obor: Informatika

Název: Použití nástroje pro plánování a řízení testů v projektu TbUIS

Motivace:
Ve výuce předmětu KIV/OKS se jako praktická ukázka nástroje z kategorie Test management používá systém TestLink. Tento systém sice vyhovuje požadavkům předmětu, ale v porovnání s ostatními existujícími nástroji, např. Mantis Bug Tracker, je zřejmé, že je TestLink již koncepčně zastaralý. Z tohoto důvodu je vhodné kvalifikovaně vyhledat jiný nástroj, který by mohl TestLink nahradit jak ve výuce, tak i ve výzkumu nových testovacích metod. Požadavky na nový nástroj jsou díky dlouholetým zkušenostem s klady a zápory TestLinku poměrně přesně známy. Úkolem bakalářské práce tedy bude zvolit vhodnou množinu existujících nástrojů a pomocí multikriteriálního hodnocení vybrat nejvhodnější náhradu za TestLink.
Není vyloučeno, že při výběru nebude žádný z kandidátů splňovat všechny stanovené požadavky v nutné míře. Pak bude nutné, aby součástí práce případně vznikly rozšiřující pluginy, které by chybějící či nedostatečnou funkcionalitu zajistily.

Praktické ověření použitelnosti vybraného nástroje bude provedeno na aplikaci UIS (University information system) projektu TbUIS (Testbed UIS). Aplikace UIS je pseudorealistická netriviální aplikace se 17 případy užití. Pro tuto aplikaci již existuje rozsáhlá (cca 1000) kolekce funkcionálních testů. Pro zajištění kontrolovatelného pokrytí případů užití těmito testy a pro jejich zpětnou trasovatelnost je nutné odvodit sadu požadavků. Od sady požadavků se odvodí jednotlivé testovací případy, které budou namapované na stávající testy. Velmi pravděpodobně se zjistí, že současný stav testů nezajišťuje 100% pokrytí požadavků, takže součástí práce bude i doplnění těchto chybějících testů.

Pokud to bude vybraný test management nástroj umožňovat, bude bonusovou součástí bakalářské práce i automatizované provázání výsledků reálných funkcionálních testů na jejich popisy v nástroji.

Zadání:

  1. Seznamte se s obecnými požadavky na aplikace pro plánování a řízení testů. Dále se seznamte s projektem TbUIS.
  2. Vyberte minimálně pět existujících aplikací pro plánování a řízení testů. Navrhněte multikriteriální hodnocení vybraných aplikací, přičemž klíčová kriteria budou vycházet z použitelnosti této aplikace v předmětu KIV/OKS. Na základě výsledků hodnocení vyberte jednu z aplikací, jejíž používání popište.
  3. Prostudujte API vybrané aplikace. Navrhněte a implementujte způsob odesílání výsledků automatických testů přes API zvolené aplikace.
  4. Ve zvolené aplikaci připravte sadu požadavků a na nich navazující sadu testovacích případů systému UIS z projektu TbUIS.
  5. Rozšiřte stávající sadu funkcionálních testů o testy, které chybějí pro 100% pokrytí sady požadavků.

Cílový operační systém: není podstatný

Jazyk a technologie: Java, XML, JUnit, Selenium Web Driver, JSON

Charakter práce: Vývojářská. Práci je možné zpracovávat na domácím PC.

Vhodné pro: Student, který je schopen experimentální práce.

Bakalář: Tomáš Kotous


Zadáno

Bakalářská práce č. 2 - 2019/2020

Zadání pro studijní obor: Informatika

Název: Zátěžové testy webové aplikace

Motivace:

Na KIV je řešen projekt TbUIS (Testbed UIS) jehož stěžejní částí je webová aplikace UIS (University Information System). Ta představuje pseudorealistickou webovou aplikaci střední složitosti. Funkčnost této aplikace byla důkladně ověřena při jejím vývoji řádově tisícem funkcionálních testů. Tyto testy a jejich podpůrná knihovna jsou volně k dispozici a jsou šířeny v rámci projektu TbUIS. Hlavním důvodem, proč byla aplikace UIS vyvíjena, je její předpokládané použití pro výzkum nových testovacích metod, které však mohou reprezentovat i jiné typy testů, než již provedené funkcionální testy.

Cílem práce je otestovat aplikaci UIS jinými typy testů z dimenze kvality FURPS+ a to zejména zátěžovými testy. K tomuto účelu lze využít již zmíněnou existující knihovnu support, která umožňuje snadnou programovou manipulaci s aplikací UIS prostřednictvím frameworku Selenium WebDriver. Knihovna support již také obsahuje všechny potřebné nástroje pro spouštění testů (framework JUnit5) a jejich vyhodnocování (framework Log4J2).
Dá se předpokládat, že zátěžové testy odhalí další skryté defekty v aplikaci UIS, které v ní zůstaly díky pesticidovému paradoxu po předchozím funkcionálním testování. Tyto defekty budou posléze opraveny se všemi dalšími souvislostmi, což však již není úkolem této bakalářské práce.
Sekundárním cílem práce je prakticky vyzkoušet přípravu zátěžových testů a jejich možnosti a toto celé zdokumentovat.

Zadání:

  1. Seznamte se s projektem TbUIS (Testbed University Information System), zejména s jeho knihovnou support. Dále se seznamte s existujícími nástroji třetích stran pro zátěžové testování.
  2. Navrhněte a realizujte zátěžový test, který bude modifikovanou metodou Monte Carlo simulovat průběh semestru v aplikaci UIS.
  3. Na základě výsledků z předchozího bodu navrhněte kolekci zátěžových testů, kdy se budou postupně zvyšovat počty studentů i učitelů v aplikaci UIS. Tyto testy realizujte na jednom počítači a výsledky vyhodnoťte.
  4. S využitím vhodného externího nástroje pro podporu zátěžových testů a poznatků z předchozích bodů navrhněte a realizujte zátěžové testy jedné aplikace UIS z několika souběžně pracujících počítačů.
  5. Metodiku zátěžového testování popište a všechny získané výsledky vyhodnoťte.

Cílový operační systém: není podstatný, zdrojové kódy testů budou napsány v Javě

Jazyk a technologie: Java, XML, JUnit, Selenium Web Driver, JMeter

Charakter práce: Experimentální. Práci je možné zpracovávat na domácím PC.

Vhodné pro: Student, který je schopen experimentální práce.

Bakalářka: David Bárta

Poslední změna: 8. 10. 2019
Pavel Herout