Master's Thesis

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

Final Thesis 4.54 MB

Author of thesis: Ing. Dalimil Rozprým

Acad. year: 2023/2024

Supervisor: Ing. Lukáš Šišmiš

Reviewer: Ing. Jiří Setinský

Abstract:

The goal of this thesis is to create an environment supporting complex automation of network application testing. Testing of network applications poses some challenges not necessarily present in other software testing. The necessity of working with network architectures containing various interconnected devices is an example of those challenges. This text first outlines examples of the network applications which the environment is suited for, and then focuses on the envirnment itself. Subsequently, the technologies which the environment depends on, its design, details of its implementation and opportunities for extension are discussed. The environment for network application testing automation mainly focuses on solving challenges consisting of running the automation on GitLab CI/CD platform, distribution of data about testing environment to the tests themselves, and actually connecting the physical devices in testing netwrork. Due to the dynamic of new network application development and the introduction of new hardware into network architectures, the design of the environment focuses mainly on its extendability.

Keywords:

network applications, testing, automation, GitLab, continuous integration, Pytest, network switches, network switch configuration

Date of defence

19.06.2024

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

Process of defence

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.

Topics for thesis defence

  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í?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology and Artificial Intelligence (MITAI)

Specialization

Software Engineering (NSEN)

Composition of Committee

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)

Supervisor’s report
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ě).

Evaluation criteria Verbal classification
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.

Points proposed by supervisor: 95
Display more

Grade proposed by supervisor: A

Reviewer’s report
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”

Evaluation criteria Verbal classification Points
Rozsah splnění požadavků zadání

Evaluation level: 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

Evaluation level: 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í

Evaluation level: 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í.

Points proposed by reviewer: 90
Display more

Grade proposed by reviewer: A