Software-testing ist ein sehr wichtiger Teil und beansprucht viel Zeit vor und nach der Veröffentlichung einer Software. In dieser Arbeit wird der mögliche Einsatz eines automatisierten Testprozesses erforscht, basierend auf wissenschaftlicher Literatur und der praktischen Umsetzung für eine mobile Anwendung. In einer ersten Einleitung wird der Bedarf an Softwaretests im Allgemeinen von Industriezeitschriften und Forschungen von Unternehmen und Universitäten nachgewiesen. Unterschiedliche Testungsprozess werden vorgestellt und ihre Vorteile und Einschränkungen werden diskutiert. Zusätzlich wird ein Entwicklungsprozess vorgestellt genannt Test-driven-Development, welcher als Kern-wert testen hat und so sicherstellt, dass eine Software die gewünschten Ziele erfüllt. Dieser Entwicklungsprozess wird in einem praktischen Beispiel analysiert, welches auch den Vorteil dieses Prozesses für Studenten, um sicherzustellen, dass die Studenten die Anforderungen einer Aufgabe erfüllen zeigt. Ein besonderes Augenmerk wurde auf Data-Driven-Testing, Regression-Testing und Keyword-Driven- Tests gesetzt, weil sie die Hauptgruppe von Software-Testprozessen bilden, die für automatisierte Testprozesse verwendet werden. Da es in den meisten Fällen nicht möglich ist, jeden Testfall zu automatisieren, wird eine Technik namens Risk-Based-Testing vorgestellt und zusätzlich eine Technik, die es erlaubt, bei begrenzter Test Zeit, den Testfall zu wählen, der die höchstmögliche Auswirkung für die Software hat. Im praktischen Teil dieser Arbeit wird der Prozess der Erstellung eines automatisierten Test-Frameworks im Detail gezeigt. Zuerst werden das Gerät und die Software auf welchem die Tests durchgeführt werden vorgestellt. Da die Tests auf UI Ebene stattfinden, wird ein Software-Test-Tool verwendet, das eine einfachere Erstellung von Tests ermöglicht, indem Datensätze- und Code-Abschnitt in einer Kombination verwendet werden. Ein Vergleich zwischen dem verwendeten und einem anderen beliebten automatisierten Testen Werkzeug wurde diskutiert. Die Software, die für den Testautomatisierungsprozess verwendet wird, ist Ranorex, in einem kleinen Abschnitt werden die Vorteile dieses Automatisierungswerkzeugs dargestellt und die zukünftige Nutzung vorgestellt. Der Erstellungsprozess eines Testfalls wird Schritt für Schritt gezeigt und zusätzlich, die verschiedenen Möglichkeiten mit ihren Vorteilen und Einschränkungen diskutiert. Neben dem klassischen Test wird auch die Validierung eines solchen Tests gezeigt und warum es überhaupt notwendig ist einen Test zu validieren, der die festgelegten Kriterien erfüllt. Der finale Schritt in einem solchen Automatisierungsprozess ist die Verwendung solcher Testfälle, in dem das in dieser Arbeit gezeigte Beispiel ausgeführt wird.
de
Software testing is a very important part and takes up a lot of time before and after the release of a software. In this thesis the possible use of an automated testing process is researched based on scientic literature and the practical implementation for a mobile application. In a first introduction the need of software testing in general is proved by industry magazines and researches done by companies and universities. The different main testing process are presented and their benefits and limitations are discussed. Additionally a developing process is presented called Test-driven-Development, which takes testing as core value and thus ensure that software meets the desired goals. This developing process is analysed in a practical example, which shows also the benefit of this process for students to ensure that the students meet the requirements of a task. A special focus was set on Data-driven-testing, Regression-testing and Keyworddriven- testing because they form the main group of software testing processes which are used for automated testing processes. Since in most cases it is not possible to automate every test-case, a technique called Risk-Based-Testing was introduced and in addition a technique that allows to decided when testing time is limited (e.g. just over night) to chose the test-case which got the highest possible impact for the software. In the practical section of this thesis the process of the creation of automated-testing-framework is shown in detail. First the device and the Software where the tests should be run were presented shortly. Since the tests are on user-interface level, a software testing tool is used which allows a easier creation of test, by using Records and Code section in a combination. A comparison between the used and an other popular automated testing tool was discussed. The software which is used for the test-automation-process is Ranorex, in a small section the benefits of this automation tool are shown and the future use is presented. The creation process of one test-case is shown step by step and additionally at critical stages of the test creation the different possibilities with their benefits and limitations are discussed. In addition to the classical test also the validation of such a test is shown and why it is even needed to validate a test that passes the set criteria. The finnal step in such a automation process is the actual use of such test-cases, in the example shown in this thesis the tests are accessed and run by adding the library where the test-cases were created.
en
Additional information:
Abweichender Titel nach Übersetzung der Verfasserin/des Verfassers