Towards a deeper understanding of test coverage

Teemu Kanstrén

Research output: Contribution to journalArticleScientificpeer-review

14 Citations (Scopus)

Abstract

Test coverage is traditionally considered as how much of the code is covered by the test suite in whole. However, test suites typically contain different types of tests with different roles, such as unit tests, integration tests and functional tests. As traditional measures of test coverage make no distinction between the different types of tests, the overall view of test coverage is limited to what is covered by the tests in general. This paper proposes a quantitative way to measure the test coverage of the different parts of the software at different testing levels. It is also shown how this information can be used in software maintenance and development to further evolve the test suite and the system under test. The technique is applied to an open‐source project to show its application in practice.
Original languageEnglish
Pages (from-to)59 - 76
Number of pages18
JournalJournal of Software Maintenance and Evolution
Volume20
Issue number1
DOIs
Publication statusPublished - 2008
MoE publication typeA1 Journal article-refereed

Fingerprint

Computer software maintenance
Software engineering
Testing

Keywords

  • test granularity
  • level of testing
  • test optimization
  • test coverage

Cite this

Kanstrén, Teemu. / Towards a deeper understanding of test coverage. In: Journal of Software Maintenance and Evolution. 2008 ; Vol. 20, No. 1. pp. 59 - 76.
@article{7e945e4baaee4b0eb8b9a29cdff2d96a,
title = "Towards a deeper understanding of test coverage",
abstract = "Test coverage is traditionally considered as how much of the code is covered by the test suite in whole. However, test suites typically contain different types of tests with different roles, such as unit tests, integration tests and functional tests. As traditional measures of test coverage make no distinction between the different types of tests, the overall view of test coverage is limited to what is covered by the tests in general. This paper proposes a quantitative way to measure the test coverage of the different parts of the software at different testing levels. It is also shown how this information can be used in software maintenance and development to further evolve the test suite and the system under test. The technique is applied to an open‐source project to show its application in practice.",
keywords = "test granularity, level of testing, test optimization, test coverage",
author = "Teemu Kanstr{\'e}n",
note = "Project code: 6086",
year = "2008",
doi = "10.1002/smr.362",
language = "English",
volume = "20",
pages = "59 -- 76",
journal = "Journal of Software",
issn = "2047-7473",
publisher = "Wiley",
number = "1",

}

Towards a deeper understanding of test coverage. / Kanstrén, Teemu.

In: Journal of Software Maintenance and Evolution, Vol. 20, No. 1, 2008, p. 59 - 76.

Research output: Contribution to journalArticleScientificpeer-review

TY - JOUR

T1 - Towards a deeper understanding of test coverage

AU - Kanstrén, Teemu

N1 - Project code: 6086

PY - 2008

Y1 - 2008

N2 - Test coverage is traditionally considered as how much of the code is covered by the test suite in whole. However, test suites typically contain different types of tests with different roles, such as unit tests, integration tests and functional tests. As traditional measures of test coverage make no distinction between the different types of tests, the overall view of test coverage is limited to what is covered by the tests in general. This paper proposes a quantitative way to measure the test coverage of the different parts of the software at different testing levels. It is also shown how this information can be used in software maintenance and development to further evolve the test suite and the system under test. The technique is applied to an open‐source project to show its application in practice.

AB - Test coverage is traditionally considered as how much of the code is covered by the test suite in whole. However, test suites typically contain different types of tests with different roles, such as unit tests, integration tests and functional tests. As traditional measures of test coverage make no distinction between the different types of tests, the overall view of test coverage is limited to what is covered by the tests in general. This paper proposes a quantitative way to measure the test coverage of the different parts of the software at different testing levels. It is also shown how this information can be used in software maintenance and development to further evolve the test suite and the system under test. The technique is applied to an open‐source project to show its application in practice.

KW - test granularity

KW - level of testing

KW - test optimization

KW - test coverage

U2 - 10.1002/smr.362

DO - 10.1002/smr.362

M3 - Article

VL - 20

SP - 59

EP - 76

JO - Journal of Software

JF - Journal of Software

SN - 2047-7473

IS - 1

ER -