Cargando…

An innovative approach for testing bioinformatics programs using metamorphic testing

BACKGROUND: Recent advances in experimental and computational technologies have fueled the development of many sophisticated bioinformatics programs. The correctness of such programs is crucial as incorrectly computed results may lead to wrong biological conclusion or misguide downstream experimenta...

Descripción completa

Detalles Bibliográficos
Autores principales: Chen, Tsong Yueh, Ho, Joshua WK, Liu, Huai, Xie, Xiaoyuan
Formato: Texto
Lenguaje:English
Publicado: BioMed Central 2009
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2657898/
https://www.ncbi.nlm.nih.gov/pubmed/19152705
http://dx.doi.org/10.1186/1471-2105-10-24
_version_ 1782165623244062720
author Chen, Tsong Yueh
Ho, Joshua WK
Liu, Huai
Xie, Xiaoyuan
author_facet Chen, Tsong Yueh
Ho, Joshua WK
Liu, Huai
Xie, Xiaoyuan
author_sort Chen, Tsong Yueh
collection PubMed
description BACKGROUND: Recent advances in experimental and computational technologies have fueled the development of many sophisticated bioinformatics programs. The correctness of such programs is crucial as incorrectly computed results may lead to wrong biological conclusion or misguide downstream experimentation. Common software testing procedures involve executing the target program with a set of test inputs and then verifying the correctness of the test outputs. However, due to the complexity of many bioinformatics programs, it is often difficult to verify the correctness of the test outputs. Therefore our ability to perform systematic software testing is greatly hindered. RESULTS: We propose to use a novel software testing technique, metamorphic testing (MT), to test a range of bioinformatics programs. Instead of requiring a mechanism to verify whether an individual test output is correct, the MT technique verifies whether a pair of test outputs conform to a set of domain specific properties, called metamorphic relations (MRs), thus greatly increases the number and variety of test cases that can be applied. To demonstrate how MT is used in practice, we applied MT to test two open-source bioinformatics programs, namely GNLab and SeqMap. In particular we show that MT is simple to implement, and is effective in detecting faults in a real-life program and some artificially fault-seeded programs. Further, we discuss how MT can be applied to test programs from various domains of bioinformatics. CONCLUSION: This paper describes the application of a simple, effective and automated technique to systematically test a range of bioinformatics programs. We show how MT can be implemented in practice through two real-life case studies. Since many bioinformatics programs, particularly those for large scale simulation and data analysis, are hard to test systematically, their developers may benefit from using MT as part of the testing strategy. Therefore our work represents a significant step towards software reliability in bioinformatics.
format Text
id pubmed-2657898
institution National Center for Biotechnology Information
language English
publishDate 2009
publisher BioMed Central
record_format MEDLINE/PubMed
spelling pubmed-26578982009-03-20 An innovative approach for testing bioinformatics programs using metamorphic testing Chen, Tsong Yueh Ho, Joshua WK Liu, Huai Xie, Xiaoyuan BMC Bioinformatics Methodology Article BACKGROUND: Recent advances in experimental and computational technologies have fueled the development of many sophisticated bioinformatics programs. The correctness of such programs is crucial as incorrectly computed results may lead to wrong biological conclusion or misguide downstream experimentation. Common software testing procedures involve executing the target program with a set of test inputs and then verifying the correctness of the test outputs. However, due to the complexity of many bioinformatics programs, it is often difficult to verify the correctness of the test outputs. Therefore our ability to perform systematic software testing is greatly hindered. RESULTS: We propose to use a novel software testing technique, metamorphic testing (MT), to test a range of bioinformatics programs. Instead of requiring a mechanism to verify whether an individual test output is correct, the MT technique verifies whether a pair of test outputs conform to a set of domain specific properties, called metamorphic relations (MRs), thus greatly increases the number and variety of test cases that can be applied. To demonstrate how MT is used in practice, we applied MT to test two open-source bioinformatics programs, namely GNLab and SeqMap. In particular we show that MT is simple to implement, and is effective in detecting faults in a real-life program and some artificially fault-seeded programs. Further, we discuss how MT can be applied to test programs from various domains of bioinformatics. CONCLUSION: This paper describes the application of a simple, effective and automated technique to systematically test a range of bioinformatics programs. We show how MT can be implemented in practice through two real-life case studies. Since many bioinformatics programs, particularly those for large scale simulation and data analysis, are hard to test systematically, their developers may benefit from using MT as part of the testing strategy. Therefore our work represents a significant step towards software reliability in bioinformatics. BioMed Central 2009-01-19 /pmc/articles/PMC2657898/ /pubmed/19152705 http://dx.doi.org/10.1186/1471-2105-10-24 Text en Copyright © 2009 Chen et al; licensee BioMed Central Ltd. http://creativecommons.org/licenses/by/2.0 This is an Open Access article distributed under the terms of the Creative Commons Attribution License ( (http://creativecommons.org/licenses/by/2.0) ), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
spellingShingle Methodology Article
Chen, Tsong Yueh
Ho, Joshua WK
Liu, Huai
Xie, Xiaoyuan
An innovative approach for testing bioinformatics programs using metamorphic testing
title An innovative approach for testing bioinformatics programs using metamorphic testing
title_full An innovative approach for testing bioinformatics programs using metamorphic testing
title_fullStr An innovative approach for testing bioinformatics programs using metamorphic testing
title_full_unstemmed An innovative approach for testing bioinformatics programs using metamorphic testing
title_short An innovative approach for testing bioinformatics programs using metamorphic testing
title_sort innovative approach for testing bioinformatics programs using metamorphic testing
topic Methodology Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2657898/
https://www.ncbi.nlm.nih.gov/pubmed/19152705
http://dx.doi.org/10.1186/1471-2105-10-24
work_keys_str_mv AT chentsongyueh aninnovativeapproachfortestingbioinformaticsprogramsusingmetamorphictesting
AT hojoshuawk aninnovativeapproachfortestingbioinformaticsprogramsusingmetamorphictesting
AT liuhuai aninnovativeapproachfortestingbioinformaticsprogramsusingmetamorphictesting
AT xiexiaoyuan aninnovativeapproachfortestingbioinformaticsprogramsusingmetamorphictesting
AT chentsongyueh innovativeapproachfortestingbioinformaticsprogramsusingmetamorphictesting
AT hojoshuawk innovativeapproachfortestingbioinformaticsprogramsusingmetamorphictesting
AT liuhuai innovativeapproachfortestingbioinformaticsprogramsusingmetamorphictesting
AT xiexiaoyuan innovativeapproachfortestingbioinformaticsprogramsusingmetamorphictesting