摘要:Mutation based testing is used to discover new possible errors in software applications. This is since in this testing approach, intentional incorrect lines of codes are injected to check the software ability to produce results that are different from the correct or original code. In this paper an automatic technique to generate valid and mutant test cases is proposed and developed. In most mutation techniques, one or more values or parameters in the specification, code, model, etc are intentionally modified and then test cases are generated to see if injected modifications can be detected.
However, in this paper, test cases are mutated (i.e. mutants are generated from the test cases) after they are generated from the GUI model. Mutations are then applied to the GUI model to test its ability to kill those mutants by rejecting them. Typical to mutation testing, the goal of this approach is to discover possible errors or problems in the program that may not be discovered by other methods. A robust model is expected to differentiate between a valid and an invalid sequence of events. An automatic execution and verification technique is also developed to evaluate the test cases that were rejected by the model and calculate coverage based on the number of rejected test cases to the total number of test cases. Results showed that in user interfaces, and based on the nature of the mutation process implementation, mutation can find new areas or types of errors that may not be found using other approaches of testing.
关键词:Mutation testing; Test case generation; test case execution and verification. Random test case generation; and GUI modelling.