Content area
Abstract
Software testing is a fundamental part of the software development process. This is the process that tests if the software is properly developed and should always test for not only the functionality but also test for common mistakes. This is the importance of Mutation testing.
Mutation testing is a type of testing that tests not only the developed software, but most importantly, the developed software tests. This testing works by injecting common defects on the software (Mutations) and expect the test to fail. Failed tests mean that the test takes into account that common issue, and therefore the tests are prepared for it.
The problem with this approach however, is that it is very resource consuming, specially on time. This happens as a new version of the software is needed for every new code injection. This is where this new technique tries to improve the approach, by instead of creating a single version for every mutation it creates only a single version for all the mutations. This without losing the software functionality nor the capability of testing just one mutation at a time.





