Rozšíření frameworku CloudCoder o možnost kontrolování JUnit testů

Název práce: Rozšíření frameworku CloudCoder o možnost kontrolování JUnit testů
Autor(ka) práce: Kovář, Jan
Typ práce: Bakalářská práce
Vedoucí práce: Pavlíčková, Jarmila
Oponenti práce: Král, David
Jazyk práce: Česky
Abstrakt:
Cílem bakalářské práce je rozšíření existujícího open-source frameworku s názvem CloudCoder (který byl vytvořen pomocí technologie GWT) jakožto pomůcky pro předmět 4IT101 – Programování v Javě, který je vyučován na Vysoké škole ekonomické v Praze. Rozšiřovaný framework spadá do kategorie výukového software, konkrétně se jedná o systém pro vytváření a plnění programovacích úkolů s okamžitým zjištěním výsledku. Práce popisuje požadavky, na jejichž základě byl vybrán zmíněný framework, dále samotnou architekturu celého systému. Pomocí architektury a požadavků, které nebyly implementovány v rámci původní verze CloudCoderu, bylo navrhnuto řešení v podobě několika případů užití. Nejrozsáhlejším z nesplněných požadavků je kontrola tzv. JUnit testů, tedy typ úkolu, ve kterém má student napsat jednotkové testy k otestování kódu, který napsal lektor. Pro tuto funkčnost bylo nutné vytvořit vlastní knihovnu nazvanou CodeAnalyser, která analyzuje předaný kód. Na základě této analýzy lze pak určit pokrytí kódu a fakt, zda student vytvořil validní testy testující daný kód. Samostatná kapitola je věnována implementaci, sestavení a spouštění, v které jsou uvedeny i přístupy ke zdrojovým kódům CloudCoderu i knihovny CodeAnalyser. V rámci kapitoly Testování jsou stanovena akceptační kritéria pro rozšíření frameworku. Závěrem jsou popsány přínosy a shrnuty veškeré cíle práce včetně jejich naplnění. Na úplném konci je vlastní ohodnocení celé práce.
Klíčová slova: GWT; Java; Jednotkové testy; JUnit; Analýza kódu; kontrola úkolů; pokrytí kódu; výuka; výukový software
Název práce: The extension of CloudCoder framework by testing the JUnit tests
Autor(ka) práce: Kovář, Jan
Typ práce: Bachelor thesis
Vedoucí práce: Pavlíčková, Jarmila
Oponenti práce: Král, David
Jazyk práce: Česky
Abstrakt:
The main objective of this bachelor thesis is extending open-source framework called CloudCoder (which is created by GWT technology) as an electronic aid for the course 4IT101 – Programming in Java which is taught at the University of economics in Prague. Extended framework is categorized as an educational software, more precisely – it is a system for creating and solving programming tasks with instant evaluating. This thesis describes the architecture and main requirements by which the framework was selected. The next step is to create several use cases that aren’t part of the original solution. The most complicated use case is a testing the JUnit test. The JUnit test is a special type of task where the student is trying to create valid JUnit test for some logical code written by the lector. There was a necessity of creating an external library called CodeAnalyser which analyses the given code. Therefore it is possible (thanks to code analysis) to determine code coverage level and whether the student has created a valid test that really tests the logical code. The next chapter describes the implementing, building and launching the whole system. There are also links to source code of CloudCoder and CodeAnalyser added in this chapter. There are acceptance criteria created in the last chapter which is dedicated to the testing. The very end of the bachelor thesis is about all objectives and their fulfillness, the main benefits and personal evaluating of this thesis.
Klíčová slova: Code coverage; Education; JUnit; Testing the test; Unit test; Code analysis; Educational software; GWT; Java

Informace o studiu

Studijní program / obor: Aplikovaná informatika/Aplikovaná informatika
Typ studijního programu: Bakalářský studijní program
Přidělovaná hodnost: Bc.
Instituce přidělující hodnost: Vysoká škola ekonomická v Praze
Fakulta: Fakulta informatiky a statistiky
Katedra: Katedra informačních technologií

Informace o odevzdání a obhajobě

Datum zadání práce: 15. 3. 2017
Datum podání práce: 1. 5. 2018
Datum obhajoby: 15. 6. 2018
Identifikátor v systému InSIS: https://insis.vse.cz/zp/65898/podrobnosti

Soubory ke stažení

    Poslední aktualizace: