{"title":"Metamorphic Testing: Beyond Testing Numerical Computations","authors":"Z. Zhou","doi":"10.1109/MET.2017.7","DOIUrl":"https://doi.org/10.1109/MET.2017.7","url":null,"abstract":"The concept of metamorphic testing (MT) is often illustrated using numerical computation programs that implement mathematical functions. This is because mathematical functions have well-known properties that can be readily understood by the audience. It is to be noted, however, that the application domain of MT is far larger than numerical computations. Hence, this talk will cover some of our research on MT beyond the testing of numerical programs. We first look at the potential of MT for cybersecurity and show how MT was used to detect bugs in real-life obfuscators. Obfuscators are a type of software that can be as important as compilers, but the testing of obfuscators was almost never studied in the past. We then look at the application of MT to search related services such as Google Maps and search engines, and show how the concept of MT has evolved from a verification technique to a more unified framework that covers verification, validation and other types of quality assessment.","PeriodicalId":332688,"journal":{"name":"2017 IEEE/ACM 2nd International Workshop on Metamorphic Testing (MET)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125833670","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Harnessing Multiple Source Test Cases in Metamorphic Testing: A Case Study in Bioinformatics","authors":"Joshua Y. S. Tang, A. Yang, T. Chen, J. Ho","doi":"10.1109/MET.2017.4","DOIUrl":"https://doi.org/10.1109/MET.2017.4","url":null,"abstract":"Metamorphic testing (MT) has been applied to software verification, validation and quality assessment. In mostprevious studies, research has focused on deriving metamorphic relations (MRs) such that the input of one or more follow-up testcases is generated from one source test case. We note that some programs under test (PUT) naturally take multiple inputs andprocess them simultaneously to generate multiple outputs. This type of programs are common in the field of big data analysisand bioinformatics. This means, in the source execution of the program, we can obtain multiple outputs from multiple sourcetest cases. Here we consider a type of MR in which multiple follow-up test cases are generated from multiple source testcases simultaneously. We hypothesise that harnessing the outputs from multiple source test cases enables us to obtain additionalinformation about the PUT, and therefore allows us to construct more effective MRs. In this paper, we designed a new MR to testa popular RNA sequence alignment program. Since the MR was designed based on a desirable property of the PUT (which usesa complex heuristic algorithm) rather than a necessary property, violation of this MR indicates the program outputs deviate fromuser expectation, hence this MR can be used for assessing the quality of the outputs. Furthermore, we note that outputs ofthe follow-up test cases allow us to putatively assign alignment information to some sequences that were not aligned in the sourcetest cases, hence potentially identifying and correcting these 'false negative' outputs. We believe this case study provides importantinsight into designing MRs based on multiple source test cases, and how testing results can be used to improve the performanceof some heuristic-based programs.","PeriodicalId":332688,"journal":{"name":"2017 IEEE/ACM 2nd International Workshop on Metamorphic Testing (MET)","volume":"152 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127312719","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Mingyue Jiang, T. Chen, Fei-Ching Kuo, Zuohua Ding, Eun-Hye Choi, O. Mizuno
{"title":"A Revisit of the Integration of Metamorphic Testing and Test Suite Based Automated Program Repair","authors":"Mingyue Jiang, T. Chen, Fei-Ching Kuo, Zuohua Ding, Eun-Hye Choi, O. Mizuno","doi":"10.1109/MET.2017.5","DOIUrl":"https://doi.org/10.1109/MET.2017.5","url":null,"abstract":"The technique of metamorphic testing (MT) has been integrated with test suite based automated program repair (APR) to alleviate the test oracle problem of APR. The proposed integration yields APR-MT techniques, which can be applied regardless of the existence of a test oracle. In a previous study, the feasibility and effectiveness of the APR-MT technique have been demonstrated via GenProg-MT, an integration of MT and the APR technique GenProg. This paper aims to complement our previous study to investigate the feasibility and effectiveness of APR-MT across different categories of APR techniques. We present the integration of MT with CETI, an APR technique belonging to a different category to GenProg, and conductexperimental analysis on the integrated technique CETI-MT, showing that CETI-MT is comparable to CETI in terms of the repair effectiveness. These results not only demonstrate the feasibility of integrating MT with different categories of APR techniques, but also consolidate the effectiveness of APR-MT techniques, hence increasing the practical benefits of APR-MT techniques.","PeriodicalId":332688,"journal":{"name":"2017 IEEE/ACM 2nd International Workshop on Metamorphic Testing (MET)","volume":"2017 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133351418","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
M. Lindvall, Adam Porter, Gudjon Magnusson, Christoph Schulze
{"title":"Metamorphic Model-Based Testing of Autonomous Systems","authors":"M. Lindvall, Adam Porter, Gudjon Magnusson, Christoph Schulze","doi":"10.1109/MET.2017.6","DOIUrl":"https://doi.org/10.1109/MET.2017.6","url":null,"abstract":"Testing becomes difficult when we cannot easily determine whether or not the system under test delivers the correct result. Autonomous systems are a case in point because it is difficult to determine whether a safety-critical autonomous system's behavior meets its specifications. To address the problem of testing autonomous drones, we have developed a framework for automated testing of a simulated autonomous drone system using metamorphic testing principles combined with model-based testing. Based on the results from using the framework to test the drone in the simulator using obstacles that do not move during flight, we have determined that this is a cost beneficial solution allowing for comprehensive testing without having to develop complex testing infrastructure to determine detailed test oracles. Our test cases are automatically generated from a set of testing models where each model encodes a certain scenario that can be varied according to metamorphic principles.","PeriodicalId":332688,"journal":{"name":"2017 IEEE/ACM 2nd International Workshop on Metamorphic Testing (MET)","volume":"31 6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125704323","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Validating a Deep Learning Framework by Metamorphic Testing","authors":"Junhua Ding, Xiaojun Kang, Xin-Hua Hu","doi":"10.1109/MET.2017.2","DOIUrl":"https://doi.org/10.1109/MET.2017.2","url":null,"abstract":"Deep learning has become an important tool for image classification and natural language processing. However, the effectiveness of deep learning is highly dependent on the quality of the training data as well as the net model for the learning. The training data set for deep learning normally is fairly large, and the net model is pretty complex. It is necessary to validate the deep learning framework including the net model, executing environment, and training data set before it is used for any applications. In this paper, we propose an approach for validating the classification accuracy of a deep learning framework that includes a convolutional neural network, a deep learning executing environment, and a massive image data set. The framework is first validated with a classifier built on support vector machine, and then it is tested using a metamorphic validation approach. The effectiveness of the approach is demonstrated by validating a deep learning classifier for automated classification of biology cell images. The proposed approach can be used for validating other deep learning framework for different applications.","PeriodicalId":332688,"journal":{"name":"2017 IEEE/ACM 2nd International Workshop on Metamorphic Testing (MET)","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121278966","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Sergio Segura, Amador Durán Toro, J. Troya, Antonio Ruiz-Cortés
{"title":"A Template-Based Approach to Describing Metamorphic Relations","authors":"Sergio Segura, Amador Durán Toro, J. Troya, Antonio Ruiz-Cortés","doi":"10.1109/MET.2017..3","DOIUrl":"https://doi.org/10.1109/MET.2017..3","url":null,"abstract":"Metamorphic testing enables the generation of test cases in the absence of an oracle by exploiting relations among different executions of the program under test, called metamorphic relations. In a recent survey, we observed a great variability in the way metamorphic relations are described, typically in an informal manner using natural language. We noticed that the lack of a standard mechanism to describe metamorphic relations often makes them hard to read and understand, which hinders the widespread adoption of the technique. In this paper, we propose a template-based approach for the description of metamorphic relations. The proposed template aims to ease communication among practitioners as well as to contribute to research dissemination. Also, it provides a helpful guide for those approaching metamorphic testing for the first time. For the validation of the approach, we used the proposed template to describe 17 previously published metamorphic relations from different domains and groups of authors, without finding expressiveness problems. We hope that this work eases the diffusion and adoption of metamorphic testing, contributing to the progress of this thriving testing technique.","PeriodicalId":332688,"journal":{"name":"2017 IEEE/ACM 2nd International Workshop on Metamorphic Testing (MET)","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125946835","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Metamorphic Testing for Adobe Data Analytics Software","authors":"Darryl C. Jarman, Z. Zhou, Tsong Yueh Chen","doi":"10.1109/MET.2017.1","DOIUrl":"https://doi.org/10.1109/MET.2017.1","url":null,"abstract":"It is challenging to test data analytics software because a test oracle might not be available. This study reports our experience of applying metamorphic testing to Adobe's data analytics software that is used for anomaly detection in a set of time series data. We make use of geometric transformations to build metamorphic relations and generate simple time series data as the source test cases. The results of this study show that metamorphic testing is highly effective for both verification and validation purposes. An investigation of the issues detected during metamorphic testing revealed three bugs in the software under test.","PeriodicalId":332688,"journal":{"name":"2017 IEEE/ACM 2nd International Workshop on Metamorphic Testing (MET)","volume":"54 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123214596","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}