Automating system test case classification and prioritization for use case-driven testing in product lines

Ines Hajri, Arda Goknil, Fabrizio Pastore, Lionel C. Briand

Research output: Contribution to journalArticlepeer-review

Abstract

Product Line Engineering (PLE) is a crucial practice in many software development environments where software systems are complex and developed for multiple customers with varying needs. At the same time, many development processes are use case-driven and this strongly influences their requirements engineering and system testing practices. In this paper, we propose, apply, and assess an automated system test case classification and prioritization approach specifically targeting system testing in the context of use case-driven development of product families. Our approach provides: (i) automated support to classify, for a new product in a product family, relevant and valid system test cases associated with previous products, and (ii) automated prioritization of system test cases using multiple risk factors such as fault-proneness of requirements and requirements volatility in a product family. Our evaluation was performed in the context of an industrial product family in the automotive domain. Results provide empirical evidence that we propose a practical and beneficial way to classify and prioritize system test cases for industrial product lines.

Original languageEnglish
Pages (from-to)3711-3769
Number of pages59
JournalEmpirical Software Engineering
Volume25
Issue number5
DOIs
Publication statusPublished - 1 Sep 2020
Externally publishedYes

Keywords

  • Automotive
  • Product Line Engineering
  • Regression testing
  • Requirements engineering
  • Test case selection and prioritization
  • Use case driven development

Fingerprint

Dive into the research topics of 'Automating system test case classification and prioritization for use case-driven testing in product lines'. Together they form a unique fingerprint.

Cite this