diplomová práce

Prostředí pro automatizované testování síťových aplikací

Text práce 4.54 MB

Autor práce: Ing. Dalimil Rozprým

Ak. rok: 2023/2024

Vedoucí: Ing. Lukáš Šišmiš

Oponent: Ing. Jiří Setinský

Abstrakt:

Tato práce si klade za cíl vytvořit prostředí pro komplexní podporu automatizace testování síťových aplikací. Testování síťových aplikací přináší svá specifika, která se nevyskytují v procesu testování jiného softwaru. Příkladem těchto specifik je zejména nutnost práce se síťovou architekturou, obsahující různá vzájemně komunikující zařízení. V tomto textu jsou nejprve nastíněny příklady aplikací pro testování ve vytvořeném prostředí a následně se věnuje popisu prostředí samotného. Popsány jsou technologie využité pro realizaci prostředí, jeho návrh, detaily implementace a také příležitosti k dalšímu rozšíření. Prostředí pro automatizované testování síťových aplikací řeší problematiku zejména řízení automatizace na platformě GitLab CI/CD, distribuci informací o běhovém prostředí samotným testům a reálné propojení fyzických zařízení na testovací síti. Vzhledem k dynamice problematiky vycházející z vývoje nových síťových aplikací a zavádění nového hardwaru do síťových architektur, je realizace prostředí zaměřena na jeho rozšířitelnost.

Klíčová slova:

síťové aplikace, testování, automatizace, GitLab, průběžná integrace, Pytest, síťové přepínače, konfigurace síťových přepínačů

Termín obhajoby

19.06.2024

Výsledek obhajoby

obhájeno (práce byla úspěšně obhájena)

znamkaAznamka

Klasifikace

A

Průběh obhajoby

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.

Otázky k obhajobě

  1. Jaké parametry by aplikace měla splňovat, aby byla testovatelná vaším řešením?
  2. Co vše se dá specifikovat pro testování?

Jazyk práce

čeština

Fakulta

Ústav

Studijní program

Informační technologie a umělá inteligence (MITAI)

Specializace

Softwarové inženýrství (NSEN)

Složení komise

doc. Ing. Ondřej Ryšavý, Ph.D. (předseda)
doc. RNDr. Jitka Kreslíková, CSc. (člen)
doc. Ing. Vladimír Janoušek, Ph.D. (člen)
Ing. Vladimír Bartík, Ph.D. (člen)
Ing. Šárka Květoňová, Ph.D. (člen)
Ing. Radek Hranický, Ph.D. (člen)

Posudek vedoucího
Ing. Lukáš Šišmiš

Této složitější diplomové práce se student zhostil s aktivním přístupem, což se odrazilo na kvalitě jak textové části, tak návrhu a implementace. Studentovi se podařilo navrhnout a implementovat rozšiřitelné testovací prostředí, které je plánováno plně integrovat ve sdružení CESNET. Díky této práci bude možné testovat hardwarově závislé bezpečnostní aplikace paralelně a průběžně bez větších omezení. Student prokázal vysokou úroveň odborných znalostí a schopností v oblasti síťové bezpečnosti a automatizace. Student pokračuje v dalším rozvoji testovacího prostředí a přispívá k jeho dalšímu zlepšování. Navrhuji souhrnné hodnocení stupněm A (výborně).

Kritérium hodnocení Slovní hodnocení
Informace k zadání

Cílem práce bylo navrhnout a implementovat rozšiřitelné testovací prostředí pro aplikace zajišťující síťovou bezpečnost. Zadání hodnotím jako náročnější vzhledem k potřebě seznámení se s několika pokročilými nástroji, jako jsou nástroje pro automatizaci testovacího prostředí (Ansible, Pytest a Gitlab CI), generátory síťového provozu (Spirent TestCenter a Cisco TRex) a aplikace pro síťovou bezpečnost. Pro úspěšné splnění cílů práce bylo nutné nejen pochopit vlastnosti těchto nástrojů a aplikací, ale také navrhnout a rozšířit automatizaci testování s podporou dynamické konfigurace síťových prvků a průběžného plánování testovacích úkolů.

Aktivita při dokončování

Práce byla dokončena načas. Obsah a výsledky práce byly konzultovány nejen před odevzdáním ale i počas
vypracování práce.

Publikační činnost, ocenění

Publikační činnost není známa a ani se neočekává.

Práce s literaturou

Student samostatně vyhledal všechny potřebné studijní materiály.

Aktivita během řešení, konzultace, komunikace

Student byl během řešení diplomové práce aktivní. Pracoval samostatně a pravidelně konzultoval výsledky práce
se svým vedoucím/konzultantem. Na konzultace byl vždy připraven.

Výsledný počet bodů navržený vedoucím: 95
Zobrazit více

Známka navržená vedoucím: A

Posudek oponenta
Ing. Jiří Setinský

Celkově je práce na dobré úrovni a splňuje veškeré stanovené požadavky. Student Rozprým Dalimil prokázal schopnost zpracovat téma a prezentovat své závěry. Práce je adekvátní pro splnění zadání a dosahuje dobrých praktických výsledků. Na základě celkového hodnocení uděluji práci známku “A”

Kritérium hodnocení Slovní hodnocení Body
Rozsah splnění požadavků zadání

Stupeň hodnocení: zadání splněno

Student splnil požadavky zadání. Hlavní cíle byly dosaženy a všechny dílčí úkoly byly podrobně zpracovány. Student projevil schopnost se orientovat v problematice a aplikovat teoretické znalosti.

Rozsah technické zprávy

Stupeň hodnocení: je v obvyklém rozmezí

Celkový rozsah zprávy je přiměřený.
Práce čítá bez příloh a literatury 68 stran vysázených v husté LaTeXové šabloně. Dle app.fit.vut.cz/normostrany práce vychází na 89 normostran. Je tedy v obvyklém rozmezí.

Prezentační úroveň technické zprávy

Prezentace technické zprávy je na dobré úrovni. Text je jasný, strukturovaný a srozumitelný. Student použil širokou škálu vizuálních prvků, jako jsou diagramy, grafy a ukázky kódu, které zásadně přispívají k lepšímu pochopení práce. Z celkového pohledu na sebe kapitoly přirozeně navazují a text se dobře čte.

90
Formální úprava technické zprávy

Formální úprava technické zprávy je na vysoké úrovni. Text je bez výrazných gramatických či stylistických chyb a vykazuje vysokou úroveň úpravy. Na konci řádku se ale často vyskytuje jednoslabičná přeložka a u citací by se hodilo použít menší mezeru. Dále je například na straně 64 je tok textu nešikovně přerušen novu stranou. Použité formátování je standardní a zajišťuje přehlednost a čitelnost textu.

80
Práce s literaturou

Student čerpá z celkem 25 literárních pramenů. Převážnou většinu tvoří vědecké publikace. Výběr je relevantní k řešenému tématu. Citace byly přesné a uvedené v souladu s požadovaným citačním stylem. Celkový počet literárních pramenů je průměrný. Práce s literaturou je celkově uspokojivá.

85
Realizační výstup

Realizační výstup splňuje všechny požadavky a demonstruje studentovu schopnost aplikovat teoretické poznatky do praxe. Výstupem je komplexní podpora automatizace testování
síťových aplikací. Charakter práce vyžadoval efektivní zajištění komunikace mezi několika zařízeními. Pro automatizaci byla využita platforma GitLab CI/CD, která byla rozšířena o další komponenty. Realizace je provedena s podporou rozšířitelnosti a modularity. Součástí jsou i ukázkové testy.

90
Využitelnost výsledků

Výsledky práce jsou přínosné a jsou dobře prakticky využitelné. Praktická využitelnost vychází ze spolupráce se sdružením CESNET. Student umožnil automatizované testování síťových aplikací, které často vykazují specifické potřeby pro testování. Řešení je připraveno pro použití a bylo vyzkoušeno na infrastruktuře CESNET. 

Náročnost zadání

Stupeň hodnocení: průměrně obtížné zadání

Zadané téma hodnotím jako průměrně obtížné. Požadovaný rozsah práce byl odpovídající zvolenému tématu a obsahoval potřebné prvky pro splnění zadání. Úkoly byly jasně stanovené, ale jejich realizace vyžadovala samostatnou práci a analytické myšlení.

Výsledný počet bodů navržený oponentem: 90
Zobrazit více

Známka navržená oponentem: A

Odpovědnost: Mgr. et Mgr. Hana Odstrčilová