People tend to make mistakes while developing software due to their nature, but there are also many circumstances, that make mistakes more likely. Pressures like those caused by deadlines, complexity of systems or organisational issues as well as changing technology increase the probability of inserting defects into the software developed. Nowadays the size and complexity of software is often so huge, that practically it became impossible to create systems free from all errors. However in certain systems defects can lead to severe consequences, such as risk to the economy, the human health and lives and the environment. Due to this, establishment of a quality management system and the adequate use of testing techniques are indispensable. The aim of quality management is to avoid errors, while testing focuses on finding the errors already in the product.
This diploma thesis starts with a theoretical summary of the fundamentals of quality management systems and software testing.
The task to be accomplished in the frame of this diploma planning was the design and implementation of an automated graphical user interface testing environment. For test case specification, this environment uses a domain-specific language – commonly used in agile development – called Gherkin. The test specifications created this way are easy to understand and can be ran both manually and automatically.