Mutation Testing means a complex change in coding. It means make a change in coding and run the test If all tests are passed in that changing area then the test is failed. If some of the tests are failed in that changing area then the test is pass. This type of testing is called Mutation testing.
mutation testing is done to see the performance of the Test Cases, in order to check test cases, application code will be changed and on execution those code changes should be pointed out, if the chanses are pointed out then the test cases are correct other wise we can consider the test cases are not appropriate.
Suppose we unit test a code and it passes. Then can we say that the code is bug free because we didnt found any?
Mutation testing is done to test our test we conducted before for the same code.
So in mutation testing the program code is altered/mutated (i.e. say first it was x>y and now after altering it is x
Now the same test suite is re-run for the mutated code which was run before for the actual code. A good test will detect the change in the code and will fail accordingly.
This is all about mutation testing and is done when we need to know that the unit test we conducted, actually passed or not.
I referred to the below site for Mutation Testing :
What is Mutation testing & when can it be done?
Questions by nimmi answers by nimmi
Related Answered Questions
Related Open Questions