Font Size: a A A

Research On Debugging Of Model Transformation Program Based On Metamorphic Testing

Posted on:2022-01-22Degree:MasterType:Thesis
Country:ChinaCandidate:K K DuFull Text:PDF
GTID:2518306548461464Subject:Software engineering
Abstract/Summary:PDF Full Text Request
As the central part and soul of Model Driven Architecture(MDA),the correctness of model transformation directly affects the whole process and result of software development based on MDA.Therefore,it is very important to guarantee the quality of model transformation for the application of MDA.However,there are Oracle problems in the testing process of model transformation program.With the increasing complexity of software system requirements and the increasing scale of software,the complexity and scale of model transformation also increase,which brings many challenges to the quality assurance process of model transformation.Most of the debugging work of the existing model transformation program is focused on the fault discovery stage,and the debugging methods are roughly divided into two kinds: static analysis and object constraint language assertion.Although static analysis method has a high fault detection rate,it often takes a long time and it is difficult to find some specific types of faults in the program;while dynamic testing based on OCL assertion highly relies on OCL constraint solving,the false negative and false positive problems in testing often lead to poor debugging results.Therefore,it is necessary to study an effective automatic technology to improve the effectiveness and accuracy of model transformation program debugging.In this paper,we propose a method to debug the model transformation program by using the metamorphic testing(MT).Firstly,we use the test case generation technology to generate the original test cases for the program under test,and construct the corresponding metamorphic relation in order to alleviate the oracle problem int testing of model transformation program,the relationship between the original output and the follow-up output is checked to judge whether the program is right or wrong by checking whether the relationship between the original output and the follow-up output conforms to the corresponding metamorphic relation.After using MT to test the model transformation program,we count the coverage information and running result information of the test cases,and use the spectrum based fault localization(SBFL)method to calculate the suspiciousness of the rules in the model transformation program,so as to find the fault location in the program.most After that,we generate candidate patches for the wrong program according to the suspicious rule list,and verify the patches through MT,so as to automatically repair the defective program.The experimental results show that the research method is feasible and effective in the debugging of model transformation program.The main contributions of this paper are as follows:(1)For the first time,the metamorphic testing is used in the fault localization and fault repair of model transformation program.Metamorphic testing solves the problem that cannot construct the spectrum-based information in the case of no expected output of the model transformation program when we execute it.(2)Propose the method of fault localiation in model transformations.This method combines the advantages of MT and SBFL,and can effectively and efficiently locate the errors in the model transformation program.(3)The generation and optimization method of candidate patches in model transformation program is proposed to improve the probability of correct patch generation.The candidate patches are verified by metamorphic test and the automatic repair of model transformation program is realized.
Keywords/Search Tags:Transformation testing, model transformation, model driven architecture, fault localization, program repair
PDF Full Text Request
Related items