Some metamorphic relations (MR) are not good at detecting faults in metamorphic testing. In this paper, the method of making compositional MR (CMR) based on the speculative law of proposition logic is presented. T...Some metamorphic relations (MR) are not good at detecting faults in metamorphic testing. In this paper, the method of making compositional MR (CMR) based on the speculative law of proposition logic is presented. This method constructs new MRs by composing existing MRs in a pairwise way. Because CMR contains all the advantages of the MRs that form it, its fault detection performance is wonderful. On the other hand, the number of relations will decrease greatly after composing, so a program can be tested with much fewer test cases when CMRs are used. In order to research the characteristics of a CMR, two case studies are analyzed. The experimental results show that the CMR's performance is mostly determined by the central MRs forming it and the sequence of composition. Testing efficiency is improved greatly when CMRs are used.展开更多
The application of metamorphic testing(MT)on automatic program repair(APR-MT)is used to generate a patch without test oracles by examining whether the input metamorphic relation(MR)is satisfied or not.However,the deli...The application of metamorphic testing(MT)on automatic program repair(APR-MT)is used to generate a patch without test oracles by examining whether the input metamorphic relation(MR)is satisfied or not.However,the delivered patch is plausible since it may satisfy the input MR but violate other MRs.This inspires us to propose an improved approach to enhance the effectiveness of APR-MT with metamorphic relation group.Ourapproach involves three major steps.First,we formally define the repair process of APR-MT by building the model of automatic program repair and metamorphic testing separately.Then,we propose the advanced model of automatic program repair based on metamorphic relation group,named METARO^(3),which takes several MRs as input while only one MR is used in APR-MT.We additionally present two kinds of selection strategies to rank MRs in descending order of the fault detection capability,which helps shorten the repair time of finding a patch.To demonstrate the feasibility and procedure of our approach,an illustration example was conducted.The results show that METARO^(3) can improve the effectiveness of APR-MT significantly.展开更多
In recent years, a variety of encrypfion algorithms were proposed to enhance the security of software and systems. Validating whether encryption algorithms are correctly implemented is a challenging issue. Software te...In recent years, a variety of encrypfion algorithms were proposed to enhance the security of software and systems. Validating whether encryption algorithms are correctly implemented is a challenging issue. Software testing delivers an effective and practical solution, but it also faces the oracle problem (that is, under many practical situations, it is impossible or too computationally expensive to know whether the output for any given input is correct). In this paper, we propose a property-based approach to testing encryption programs in the absence of oracles. Our approach makes use of the so-called metamorphic properties of encryption algorithms to generate test cases and verify test results. Two case studies were conducted to illustrate the proposed approach and validate its effectiveness. Experimental results show that even without oracles, the proposed approach can detect nearly 50% inserted faults with at most three metamorphic relations (MRs) and fifty test cases.展开更多
基金The National Natural Science Foundation of China(No.60425206,60633010,60773104,60503033)the Excellent Talent Foundation of Teaching and Research of Southeast University
文摘Some metamorphic relations (MR) are not good at detecting faults in metamorphic testing. In this paper, the method of making compositional MR (CMR) based on the speculative law of proposition logic is presented. This method constructs new MRs by composing existing MRs in a pairwise way. Because CMR contains all the advantages of the MRs that form it, its fault detection performance is wonderful. On the other hand, the number of relations will decrease greatly after composing, so a program can be tested with much fewer test cases when CMRs are used. In order to research the characteristics of a CMR, two case studies are analyzed. The experimental results show that the CMR's performance is mostly determined by the central MRs forming it and the sequence of composition. Testing efficiency is improved greatly when CMRs are used.
基金The work was supported by a grant from National Natural Science Foundation of China(No.61772423).
文摘The application of metamorphic testing(MT)on automatic program repair(APR-MT)is used to generate a patch without test oracles by examining whether the input metamorphic relation(MR)is satisfied or not.However,the delivered patch is plausible since it may satisfy the input MR but violate other MRs.This inspires us to propose an improved approach to enhance the effectiveness of APR-MT with metamorphic relation group.Ourapproach involves three major steps.First,we formally define the repair process of APR-MT by building the model of automatic program repair and metamorphic testing separately.Then,we propose the advanced model of automatic program repair based on metamorphic relation group,named METARO^(3),which takes several MRs as input while only one MR is used in APR-MT.We additionally present two kinds of selection strategies to rank MRs in descending order of the fault detection capability,which helps shorten the repair time of finding a patch.To demonstrate the feasibility and procedure of our approach,an illustration example was conducted.The results show that METARO^(3) can improve the effectiveness of APR-MT significantly.
基金Acknowledgements Authors would like to thank Professor Tsong Yueh Chen for his constructive comments on the earlier version of this paper and Rong Liang for her involvement in the experiments reported in this work. This research was supported by the National Natural Science Foundation of China (Grant Nos. 60903003, 61370061), the Beijing Natural Science Foundation of China (4112037), the Fundamental Research Funds for the Central Universities (FRF-SD-12-015A), the Open Funds of the State Key Laboratory of Computer Science of Chinese Academy of Science, (SYSKF1105), and the Beijing Municipal Training Program for Excellent Talents (2012D009006000002). Thanks to the anonymous reviewers who provided useful suggestions on earlier versions of this paper.
文摘In recent years, a variety of encrypfion algorithms were proposed to enhance the security of software and systems. Validating whether encryption algorithms are correctly implemented is a challenging issue. Software testing delivers an effective and practical solution, but it also faces the oracle problem (that is, under many practical situations, it is impossible or too computationally expensive to know whether the output for any given input is correct). In this paper, we propose a property-based approach to testing encryption programs in the absence of oracles. Our approach makes use of the so-called metamorphic properties of encryption algorithms to generate test cases and verify test results. Two case studies were conducted to illustrate the proposed approach and validate its effectiveness. Experimental results show that even without oracles, the proposed approach can detect nearly 50% inserted faults with at most three metamorphic relations (MRs) and fifty test cases.