Name of the participant: Daniel Zimmermann
Description of the IT research project: Today’s black-box test automation approaches are inflexible due to the rigid test script execution and the high creation and maintenance effort. Manual approaches are still superior here because testers can use their own intuition. To improve test automation, we propose a new approach in which an unknown piece of software under test is automatically examined by a GUI-level AI. The aim is to detect as many new states in the software as possible in order to generate new test cases. Software testing is one of the most important steps in software engineering, but it is expensive and time-consuming. With the presented AI approach, we envision a concept for the automatic detection of states and transitions in software systems without access to the source code.
The AIs used consist of deep neural networks. Since the agent is supposed to remember states that have already been reached, these networks must have a memory. In addition to established recurrent networks such as long short-term memory (LSTM), we rely on a novel approach with so-called continuous-time recurrent neural networks (CTRNNs), which are possibly better suited to persist information in the network over a longer period of time due to their continuous neuron states.
As an alternative to reinforcement learning algorithms, neuroevolutionary methods are to be used for training. In contrast to supervised learning, the agent is not provided with labelled data, which often has to be created manually. Instead, the agent must independently develop advantageous strategies through interaction with the software. This approach is better suited to finding new states in the software. The disadvantage, however, is the higher demand for computing power.
Software Campus partners: Karlsruher Institut für Technologie, IAV
Implementation period: 01.03.2021 – 28.02.2023