Development of a Framework for Contract-Based Testing of Software Components

Daily software developers release applications with the intention to alleviate every days life. Unfortunately the IT community counts not enough experts and high quality development environments, so most of the software projects contain quite serious bugs. Customers mostly accept these, even if they result in high costs for the whole economy. Bugs mostly can be backtraced to bad software design and not enough testing. A way out of this situation is presented by quite a few techniques for simple design of robust and modular software, as Design Patterns and Design by Contract. A good approach to software testing consists of simply explaining the importance of testing and of motivating engineers to integrate more and more testing in the whole development cycle. Within the scope of this thesis, factors for high quality software are being discussed and upon these CrashIt will be presented. CrashIt represents a framework, that supports developers and test-engineers during the unitand integration-tests of software components.