Přístupnostní navigace
E-application
Search Search Close
Bachelor's Thesis
Author of thesis: Bc. Ján Špaček
Acad. year: 2023/2024
Supervisor: Ing. Petr John
Reviewer: Ing. Jiří Hynek, Ph.D.
The primary objective of this thesis is to develop and implement an automated testing environment for user interface and performance testing on the ACADA platform in collaboration with Logimic company. Additionally, this thesis aims to identify and propose performance enhancements for the ACADA platform. To achieve these goals, the thesis thoroughly analyzes the current state of testing at Logimic, selects the most suitable testing framework, implements a comprehensive testing suite using Cypress, and establishes standards for test structure and workflow. The result of this thesis is a robust testing suite that allows early identification of issues in the development process. By leveraging the capabilities of Cypress, the testing suite ensures a faster and more efficient testing workflow and also contributes to improved user satisfaction by ensuring the platform is reliable and responsive.
Internet of Things, Smart City, automated testing, performance testing, testing framework, Cypress, Logimic, application interface
Date of defence
11.06.2024
Result of the defence
Defended (thesis was successfully defended)
Grading
B
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 B.
Topics for thesis defence
Language of thesis
English
Faculty
Fakulta informačních technologií
Department
Department of Information Systems
Study programme
Information Technology (BIT)
Composition of Committee
doc. Ing. František Zbořil, Ph.D. (předseda) Ing. Libor Polčák, Ph.D. (člen) doc. Mgr. Lukáš Holík, Ph.D. (člen) doc. Ing. Vítězslav Beran, Ph.D. (člen) Ing. Radek Hranický, Ph.D. (člen)
Supervisor’s reportIng. Petr John
Student pracoval samostatně a pečlivě a vypracoval komplexní řešení. Toto řešení účinně umožňuje automatické testování celé platformy, což napomáhá prevenci regresí funkcionality. Navíc automaticky vyhodnocuje výkonnost platformy, čímž pomáhá předcházet regresím výkonu. Vzhledem k praktické použitelnosti a vysoké kvalitě řešení navrhuji hodnocení stupněm A.
Zadání vzniklo ve spolupráci se společností Logimic. Práce měla dva hlavní cíle. Prvním z nich bylo vytvořit metodiku automatizovaného testování pro frontend platformy Smart City a testování výkonnosti této platformy. To zahrnovalo definování výkonnostních metrik a výběr vhodných nástrojů pro vyhodnocování a udržování výkonnostních standardů. Druhým cílem bylo analyzovat danou platformu, identifikovat výkonnostní nedostatky a doporučit možná řešení. Student musel nejprve prozkoumat teorii týkající se jak konceptu chytrých měst, tak internetu věcí. Pro splnění obou cílů pak student provedl analýzu architektury platformy společnosti Logimic, což zahrnovalo různé možnosti nasazení, jako je běh na cloudové platformě AWS a nasazení pomocí technologií jako Docker a Nginx. Kromě toho student zhodnotil dostupné nástroje pro testování frontendů a posoudil jejich kompatibilitu a použitelnost s frameworkem Angular. Student také prozkoumal možnosti integrace nástrojů pro analýzu výkonu, jako je Google Lighthouse, do vybraných frameworků (konkrétně framework Cypress). Student poté vytvořil frontendové testy pro mobilní i desktopovou platformu v nejpoužívanějších pohledech aplikace Smart City a ve spolupráci se společností Logimic nastavil automatizované testovací prostředí pro vyhodnocování end-to-end testů a provádění výkonnostní analýzy. Nakonec student vyhodnotil dopad doporučených zlepšení výkonu platformy Smart City.
Student prostudoval doporučenou literaturu a aktivně vyhledával další zdroje.
Student komunikoval během celého akademického roku. Konzultace probíhaly online přibližně každé dva týdny s vedoucím práce a se členy vývojového týmu společnosti Logimic. Student řádně plnil zadané úkoly a práce postupovala dobrým tempem.
Práce byla dokončena s dostatečným předstihem, aby mohla být předložena společnosti Logimic a řádně konzultována.
–
Grade proposed by supervisor: A
Reviewer’s reportIng. Jiří Hynek, Ph.D.
Až na některé výše zmíněné nedostatky týkající se zejména technické zprávy bylo vytvořeno použitelné řešení. Oceňuji, že se student rozhodl psát práci v anglickém jazyce. Navrhuji hodnocení stupněm B.
Evaluation level: průměrně obtížné zadání
Cílem práce bylo navrhnout a implementovat řešení pro automatické testování klientské části platformy firmy Logimic určené pro sledování a správu chytrých zařízení. Student se musel seznámit s danou platformou (TypeScript, Angular), dále prostudovat technologie určené pro automatizované testování (Cypress) a možnosti průběžné integrace (Github Actions). Zadání hodnotím jako průměrně obtížné.
Práce je rozumně členěna na teoretickou a praktickou část. Vytkl bych, že analýza neobsahuje popis požadavků na výsledné řešení. Kapitola týkající se implementace nepopisuje dostatečně, jak byla IoT platforma rozšířena. Kapitola popisující testování zmiňuje pouze vybrané testy, nicméně chybí ucelený pohled.
Práce je psána v anglickém jazyce na přijatelné úrovni. Vytkl bych zejména místy nekvalitní pestrobarevné a mnohdy nečitelné ilustrace. Dále obsahuje některé typografické chyby (např. špatné pomlčky).
Výstupem je rozšíření klientské aplikace IoT platformy firmy Logimic. Součástí řešení je sada testů, která testuje základní pohledy aplikace. Architektura využívající průběžné testování byla testována na zařízení Raspberry Pi. Výsledky hodnotím kladně.
Výstupy jsou potenciálně využitelné pro automatizované testování klientské aplikace IoT platformy firmy Logimic.
Evaluation level: zadání splněno
Evaluation level: je v obvyklém rozmezí
Student cituje nadprůměrné množství zdrojů. Sekce 4.3 nicméně mohla obsahovat větší množství referencí.
Grade proposed by reviewer: B
Responsibility: Mgr. et Mgr. Hana Odstrčilová