Schmid, D. (2017). Konzeptionierung und Implementierung eines Performance-Test-Prozesses aus Entwicklersicht [Diploma Thesis, Technische Universität Wien]. reposiTUm. http://hdl.handle.net/20.500.12708/78772
Java; nicht-funktionaler Test; Software-Test; Performance; Performance-Test; Performance-Test-Prozess; Testen aus Entwicklersicht
de
Java; Non-functional Testing; Software Testing; Performance; Performance Testing; Performance Test Process; Testing from the Developer's Point of View
en
Abstract:
Testen im Allgemeinen und Performance-Testen im Speziellen sind mittlerweile ein integraler Bestandteil des Softwareentwicklungsprozesses. Für jedwede Art von Tests existieren Modelle und Prozesse, die beschreiben, wie diese am besten durchgeführt werden können. Speziell bei Performance-Tests herrschen in der Praxis jedoch häufig Bedingungen, die von den im theoretischen Modell vorausgesetzten Annahmen mitunter stark abweichen. Diese Arbeit beschäftigt sich mit der Ausarbeitung eines angepassten Performance-Test-Prozesses, welcher die Hürden des realen Projektalltags mit einbezieht. Es wird erläutert, welche Abstriche bei der Durchführung von Performance-Tests gemacht werden können und wie die Ergebnisse diesbezüglich zu interpretieren sind. Anschließend wird anhand eines realen Projekts der Prozess beispielhaft durchgeführt, und es werden die sich daraus ergebenden Erkenntnisse sowohl für das Projekt als auch für den Prozess an sich diskutiert. Außerdem wird eine für die Anwendung des Prozesses entwickelte Java-Bibliothek zum Messen der Performance vorgestellt. Das Ergebnis der Arbeit ist ein Performance-Test-Prozess, welcher die Entwickler als primäre Zielgruppe anspricht, kostengünstig und frühzeitig im Softwareentwicklungsprozess realisierbar und in erster Linie dafür ausgelegt ist, die Performance kontinuierlich zu analysieren und zu überwachen, um das zeitnahe Ergreifen von Gegenmaßnamen zu ermöglichen.
Testing in general, and performance testing in particular, have become an integral part of the software development process. For all sorts of tests, there are patterns and practices available which describe the best way to perform. In practice, however, especially the conditions of performance tests deviate from the assumptions of the theoretical model. This thesis deals with the development of a customized performance process that encompasses the barriers of the everyday project routine. The tradeoffs which could be acceptable when applying performance tests, as well as their effects on the test outcome, are discussed. In addition, the customized process is performed on an example project, followed by a discussion as to the impact of the outcome on the project and the process itself. Moreover, a java library for measuring performance, which was developed for the application of the process, is presented. The result of the thesis is a performance test process, which addresses developers as its main target audience. It is reasonable, can be realized early in the software development process and its primary purpose is to analyze and monitor the performance on a continuous base in order to enable early counteractive measures.