Reuse-Based Test Recommendation in Software Engineering


Janjic, Werner


[img]
Preview
PDF (Reuse-Based Test Recommendation in Software Engineering)
thesis(1).pdf - Published

Download (25MB)

URL: https://ub-madoc.bib.uni-mannheim.de/36772
URN: urn:nbn:de:bsz:180-madoc-367724
Document Type: Doctoral dissertation
Year of publication: 2014
Place of publication: Mannheim
University: Universität Mannheim
Evaluator: Atkinson, Colin
Date of oral examination: 24 June 2014
Publication language: English
Institution: School of Business Informatics and Mathematics > Software Engineering (Atkinson 2003-)
Subject: 004 Computer science, internet
Classification: CCS: Software, Testing and Debugging , Testing tools (e.g., data generators, coverage testing),
Subject headings (SWD): Software Engineering , Softwarewiederverwendung , Softwaretest , Softwareentwicklung
Individual keywords (German): Wiederverwendung , Software Testing , Testdaten , Recommendation System , JUnit
Keywords (English): Reuse , Software Testing , Test Data , Recommendation System , Continuous Speculative Testing , Test Reuse Environment , Test Reuse
Abstract: Still today, the development of effective and high-quality software tests is an expensive and very labor intensive process. It demands a high amount of problem awareness, domain knowledge and concentration from human software testers. Therefore, any technology that can help reduce the manual effort involved in the software testing process -- while ensuring at least the same level of quality -- has the potential to significantly reduce software development and maintenance costs. In this dissertation, we present a new idea for achieving this by reusing the knowledge bound up in existing tests. Over the last two decades, software reuse and code recommendation has received a wide variety of attention in academia and industry, but the research conducted in this area to date has focused on the reuse of application code rather than on the reuse of tests. By switching this focus, this thesis paves the way for the automated extraction of test data and knowledge from previous software projects. In particular, it presents a recommendation approach for software tests that leverages lessons learned from traditional software reuse to make test case reuse suggestions to software engineers while they are working. In contrast to most existing testing-assistance tools, which provide ex post assistance to test developers in the form of coverage assessments and test quality evaluations, our approach offers an automated, proactive, non-intrusive test recommendation system for efficient software test development.
Translation of the abstract: Auch heutzutage ist die Entwicklung qualitativ hochwertiger Software-Tests ein nicht zu vernachlässigender Kostentreiber in Software-Projekten. Die Mitglieder eines erfolgreichen Teams zur Software-Qualitätssicherung benötigen ein hohes Maß an Kenntnis über die projektspezifische Domäne, Konzentration und Problembewusstsein. Gleichzeitig steht das Testen von Software in einem Spannungsverhältnis zur Entwicklung neuer, für den Benutzer sichtbarer Funktionalität, und ist dadurch bei Entscheidungen im Entwicklungsprozess potentiell benachteiligt. Um diesem Missstand entgegenzuwirken haben Software-Ingenieure seit den frühen Zeiten des Software-Testens nach Möglichkeiten gesucht, den Prozess so weit wie möglich zu automatisieren und den manuellen Aufwand zu reduzieren. Dabei muss sichergestellt sein, dass die resultierende Test- und Software-Qualität vergleichbar oder besser ist, als beim manuellen Testen. Die vorliegende Dissertation beschäftigt sich mit der tool-gestützten Wiederverwendung des in bestehenden Tests enthaltenen Expertenwissens in zukünftigen Tests und in neuem Kontext. Dafür bedienen wir uns zuerst der allgemein bekannten Techniken für code-basierte Wiederverwendung und entwickeln darauf basierend eine sprachunabhängige Suchmaschine für Software-Tests. Weiterhin demonstrieren wir die Anwendbarkeit des entwickelten Ansatzes anhand einer prototypischen Implementierung als Eclipse Plug-In, welches auf Grundlage dieser Suchmaschine seinem Benutzer unaufdringlich und vorausschauend Vorschläge zum Software-Testen unterbreitet. Die potentiell wieder\-verwendbaren Tests werden im Hintergrund evaluiert und stehen dem Benutzer auf Tastendruck zur Verfügung. Um den Nutzen der vorgestellten Ideen zu erhöhen, stellt diese Arbeit auch einen Ansatz vor, mit dessen Hilfe potentiell falsche Ergebnisse automatisch erkannt und aus der Ergebnisliste gestrichen werden. Neben den grundlegenden Betrachtungen sorgen praktische Beispiele für ein besseres Verständnis der vorgestellten Ideen. (German)
Additional information: Zugl. als Druckausg. im Verl. Dr. Hut, München erschienen




Das Dokument wird vom Publikationsserver der Universitätsbibliothek Mannheim bereitgestellt.




Metadata export


Citation


+ Search Authors in

+ Download Statistics

Downloads per month over past year

View more statistics



You have found an error? Please let us know about your desired correction here: E-Mail


Actions (login required)

Show item Show item