Bibliographic Metadata

Title
Automated testing of Java applications: focus on Big Data : Analysis and evaluation of automation frameworks for integration and system testing
Additional Titles
Automated testing of Java applications: focus on Big Data Analysis and evaluation of automation frameworks for integration and system testing
AuthorJucha, Iwona Lilianna
Thesis advisorRadinger-Peer, Wolfgang
Published2014
Date of SubmissionJune 2014
LanguageEnglish
Document typeBachelor Thesis
Keywords (DE)Big Data / Big Data Test / Hadoop / Integrationstest / Java-Anwendung Test / Java Test Framework / Systemtest / Testautomatisierung / Test Automatisierung Tool / Test Framework
Keywords (EN)Big Data / Big Data testing / Hadoop / Integration testing / Java application testing / Java Testing Framework / System testing / Test automation / Test automation tools / Test Framework
Restriction-Information
 _
Classification
Abstract (German)

Diese Bachelorarbeit beschäftigt sich mit automatisierten Testverfahren für Java-Anwendungen, die Big Data verarbeiten können. Um die Tests angemessen und zeitge-recht durchzuführen, sind Testautomatisierung und geeignete Testwerkzeuge erforderlich, die eine zuverlässige Software gewährleisten können.

Die Vielfalt und Komplexität von Big Data stellen verschiedene Herausforderungen dar, wie das Einrichten der Testumgebung für ein großes Datenvolumen, die über mehrere Knoten verteilt ist, oder die Einstellung eines geeigneten Frameworks, welches das Tes-ten und Durchführen einer gesamten Datenmenge mit vollständigen Integrations- und Systemtests ermöglicht.

Daher sind die Ziele dieser Arbeit (i) die Möglichkeiten der Testverfahren von Big-Data zu definieren sowie (ii) zu bestätigen, ob es möglich ist, eine gesamte Anwendung testen zu können und (iii) die automatisierten Test-Frameworks für Java-Anwendungen zu bestimmen, zu analysieren und zu bewerten, die die Entwicklung von qualitativ hochwertiger Software ermöglichen. Die Auswahl der Frameworks ist auf die Integration und auf Sys-temtests beschränkt.

Die vorausgehenden Ergebnisse dieser Studie zeigen, dass System- und Integrations-tests von großen Datenmengen innerhalb des Hadoop-Systems mittels Frameworks wie HBase und HIT durchgeführt werden können. Testautomatisierung und geeignete automatisierte Test-Frameworks, die alle erforderlichen Funktionen enthalten, können bei der Prüfung der gesamten Anwendung helfen. Daher ist die Auswahl geeigneter Testwerkzeuge der entscheidende Schritt für eine erfolgreiche Software-Entwicklung.

Analyse und Auswertung der Test-Frameworks zeigte, dass Arquillian (Open Source) und Squish (Kommerziell) die besten Testautomatisierungswerkzeuge sind, die die wichtigsten Funktionen enthalten, die für diese Studie erforderlich sind.

Diese Auswertung ist theoretischer Natur, deshalb ist die Installation und Prüfung jedes einzelnen Frameworks erforderlich, um die theoretischen Ergebnisse zu bestätigen und um die Qualität der Features festzustellen.

Abstract (English)

This Bachelor Thesis focuses on automated testing techniques for java applications, which can process Big Data. In fact, to perform tests adequately and in timely manner, test automation and suitable testing tool are required for ensuring reliable software.

Big Data diversity and complexity cause various challenges such as setting-up test environment for big volume of data distributed across several nodes, finding a suitable frame-work that permits to test an entire data set, and performing full integration & system test.

Therefore, the objectives of this thesis are (i) to define the possibilities of testing techniques (ii) to confirm if it is possible to test an entire application and (iii) to establish, ana-lyse and evaluate automated testing frameworks for java applications for developing high quality software. Selection of frameworks is limited to integration and system testing.

The preliminary results obtained during this study indicate that the system and integration tests on large datasets can be performed within the Hadoop system using frameworks such as HBase and HIT. Test automation and suitable automation testing framework that includes all required functionality, can help in testing the entire application. Therefore selecting suitable automated testing tools is the key step for a successful software development.

Analysis and evaluation of the testing framework demonstrated that Arquillian (open source) and Squish (commercial) are the best automation testing tools, which include the main features required during this study.

This evaluation is theoretical, therefore installation and test of each framework will be required to validate theoretical results and to assess the quality of the features.