Fakultät für Technische Wissenschaften
Testing lies at the heart of software development. Tightly woven with requirements engineering, the testing process influences how software is developed and its quality. With adoption of agile and devops approaches, the continuous testing process has to rely on a testing strategy that is multi-level and has to balance test automation and exploratory testing. Because so many things need to be tested, and because the system under test changes very often and rapidly, effectiveness and sustainability of the testing process is a must.
I will present an approach for automating end-to-end testing that is based on UML specifications of the behavior of the system and a toolkit that automatically generates source code supporting definition of high level test cases and related artifacts. In this way, a software development team can avoid dealing with low level details and focus instead on what needs to be tested, what test conditions need to be covered, how test results affect requirements coverage. This kind of information constitutes then a living documentatio of the system specification which can be used to guide exploratory testing. Such an approach is currently being used in mobile apps (in the area of workforce management) and web apps (in the financial domain).
Prof. Giorgio Brajnik
Kerstin Smounig (Kerstin [dot] Smounig [at] aau [dot] at)