title: Performance testing in heterogeneous and distributed engineering environments
Creators: name: Macho, Christian
Publisher: name: TU Wien
Year: 2015
Subjects: subject: Software Engineering
subject: Leistungstest
subject: Heterogene verteilte Systeme
subject: Software Engineering
subject: Performance Testing
subject: Heterogeneous Distributed Systems

description: Software Qualität ist ein wichtiger Aspekt im modernen Software Engineering und in Software Engineering Prozessen. Um die Qualität von modernen Software Systemen zu sichern, gibt es viele Arten von Tests und Ansätzen, wie zum Beispiel Akzeptanz Tests oder Performance Tests. Da Software Engineering ein wachsendes Gebiet ist und die Methoden des Software Engineering auch auf andere Disziplinen übertragen werden, ist es auch interessant, Software Qualitätssicherungsmethoden auf andere Disziplinen zu übertragen. Eine solcher Disziplinen, auf die Software Engineering Methoden angewandt werden, sind Automations Systeme, die ebenfalls immer größer und komplexer werden. Es gibt Ansätze die auftretenden Herausforderungen zu lösen, wie zum Beispiel den Automation Service Bus (ASB). Aufgrund der steigenden Komplexität, entsteht auch das Bedürfnis die Qualität zu kontrollieren. An diesem Punkt können Software Testing Ansätze angewandt werden. Performance Testing ist Teil des Software Testing und sollte deshalb auch in Betracht gezogen werden Performance Testing ist eine schwierige Aufgabe. Es gibt viele verfügbare Tools, die alle verschiedene Funktionen und Ziele haben. Deshalb ist es eine Herausforderung eine repräsentative Liste an Kriterien zu ermitteln, die den Bedürfnissen der User an das Tool entspricht. Im Anschluss muss ein Tool gefunden werden, dass die Kriterien am besten erfüllt. Um Performance Tests ausführen zu können, müssen Methoden gefunden werden, wie Performance Tests in der Umgebung am besten ausgeführt werden können. Diese Methoden werden in ein Framework zusammen gefasst. Weiters muss gezeigt werden, dass dieses Framework funktioniert. Zu diesem Zweck wird eine Tool Studie, mit einer Liste an Anforderungen der User, durchgeführt. Ein Ergebnis der Studie ist ein Tool, welches die Anforderungen am besten erfüllt. Danach wird ein Performance Testing Framework entworfen und umgesetzt mit dem vielversprechendsten Tool. Dieses Framework wird dann auf ein Web Front-End einer Industrie Applikation angewandt, die in einem Automation Environment läuft. Weiters wird überprüft ob das Framework im Rahmen der Forschungsumgebung realisierbar und anwendbar ist. Die Ergebnisse dieser Arbeit präsentieren eine Liste an Kriterien, die auf die Forschungsumgebung zugeschnitten sind, um ein Tool zu finden, dass es eine Performance Analyse möglich macht - JMeter. Um und mit JMeter wird ein Framework umgesetzt und eine Fallstudie zeigt dass das Framework mit JMeter in diesem Use Case gut funktioniert. Es gibt noch Platz für weitere Studien, wie zum Beispiel die Tests zu erweitern oder die Performance Analyse zu verteilen.
description: Software Quality is an important aspect in modern Software Engineering and Software Engineering development processes. To ensure the quality of modern software systems, there exist many types of tests and approaches, such as acceptance testing or performance testing. As Software Engineering is a growing field and methods of Software Engineering are also transferred to other disciplines, this transfer is also interesting for Software Quality methods. One of the disciplines that Software Engineering methods are heading to, is the area of Automation Systems as these systems get larger and more complex. There are approaches to solve the occurring challenges such as the Automation Service Bus (ASB). Due to the raising complexity, a need of controlling the quality also raises. At that point Software Testing approaches can be applied. Performance Testing is a part of Software Testing and should therefore also be taken into account. Performance Testing is a difficult task. There are many available tools and they all have different features and aims. Therefore, there is a challenge to determine a representative list of criteria that reflect the needs of the users concerning the usage of a tool. Subsequently, a tool has to be found that fulfills the criteria best. In order to be able to execute performance tests, a method outlining how to do performance tests in this environment has to be found and summarized in a framework. Further, this framework has to be shown working. For this purpose a tool study of available Performance Testing tools is performed with a list of collected requirements of the users. As a result of this tools study, a most suitable tool is found. Subsequently, a Performance Testing Framework is designed and implemented with the most suitable tool. This framework is then applied on a web front-end of an industrial application running in the Automation Service environment. It is checked if the framework is feasible for applying it in the research environment. The results of this thesis present a list of criteria, tailored to the research environment, to find a tool that is able to allow a Performance Analysis - JMeter. Around and with JMeter a framework is implemented and the case study shows that the framework with JMeter works well for this use case. There is space for future study, such as extending the tests or distribute the Performance Analysis.