Test-Algebra-Based Fault Location Analysis for the Concurrent Combinatorial Testing

Guanqiu Qi, Wei Tek Tsai, Charles Colbourn, Jie Luo, Zhiqin Zhu

Research output: Contribution to journalArticle

2 Citations (Scopus)

Abstract

A new algebraic system, test algebra (<formula><tex>$\mathsf{TA}$</tex></formula>), is proposed for identifying faults in combinatorial testing for software-as-a-service (SaaS) applications. In the context of cloud computing, SaaS is a new software delivery model, in which mission-critical applications are composed, deployed, and executed on cloud platforms. Testing SaaS applications is challenging because new applications need to be tested once they are composed, and prior to their deployment. A composition of components providing services yields a configuration providing an SaaS application. While individual components in the configuration may have been thoroughly tested, faults still arise due to interactions among the components composed, making the configuration faulty. When there are <formula><tex>$k$</tex></formula> components, combinatorial testing algorithms can be used to identify faulty interactions with <formula><tex>$t$</tex></formula> or fewer components, for some threshold <formula><tex>$2 \le t \le k$</tex></formula> on the size of interactions considered. In general, these methods do not identify specific faults, but rather indicate the presence or absence of some faults. To identify specific faults, an adaptive testing regime repeatedly constructs and tests configurations in order to determine, for each interaction of interest, whether it is faulty or not. In order to perform such testing in a loosely coupled distributed environment such as the cloud, it is imperative that testing results can be combined from many different servers. The <formula><tex>$\mathsf{TA}$</tex></formula> defines rules to permit results to be combined, and to identify the faulty interactions. Using the <formula><tex>$\mathsf{TA}$</tex></formula>, configurations can be tested concurrently on different servers and in any order. The <formula><tex>$\mathsf{TA}$</tex></formula> always keeps the high reduction rate of potential faulty configurations in fault location analysis.

Original languageEnglish (US)
JournalIEEE Transactions on Reliability
DOIs
StateAccepted/In press - Jun 26 2018

Fingerprint

Electric fault location
Algebra
Testing
Servers
Cloud computing
Chemical analysis

Keywords

  • Algebra
  • Cloud computing
  • cloud computing
  • combinatorial testing (CT)
  • Fault location
  • fault location analysis
  • Program processors
  • Software as a service
  • software-as-a-service (SaaS)
  • Testing

ASJC Scopus subject areas

  • Safety, Risk, Reliability and Quality
  • Electrical and Electronic Engineering

Cite this

Test-Algebra-Based Fault Location Analysis for the Concurrent Combinatorial Testing. / Qi, Guanqiu; Tsai, Wei Tek; Colbourn, Charles; Luo, Jie; Zhu, Zhiqin.

In: IEEE Transactions on Reliability, 26.06.2018.

Research output: Contribution to journalArticle

@article{7233ea9d19a14822a342471d1a44f207,
title = "Test-Algebra-Based Fault Location Analysis for the Concurrent Combinatorial Testing",
abstract = "A new algebraic system, test algebra ($\mathsf{TA}$), is proposed for identifying faults in combinatorial testing for software-as-a-service (SaaS) applications. In the context of cloud computing, SaaS is a new software delivery model, in which mission-critical applications are composed, deployed, and executed on cloud platforms. Testing SaaS applications is challenging because new applications need to be tested once they are composed, and prior to their deployment. A composition of components providing services yields a configuration providing an SaaS application. While individual components in the configuration may have been thoroughly tested, faults still arise due to interactions among the components composed, making the configuration faulty. When there are $k$ components, combinatorial testing algorithms can be used to identify faulty interactions with $t$ or fewer components, for some threshold $2 \le t \le k$ on the size of interactions considered. In general, these methods do not identify specific faults, but rather indicate the presence or absence of some faults. To identify specific faults, an adaptive testing regime repeatedly constructs and tests configurations in order to determine, for each interaction of interest, whether it is faulty or not. In order to perform such testing in a loosely coupled distributed environment such as the cloud, it is imperative that testing results can be combined from many different servers. The $\mathsf{TA}$ defines rules to permit results to be combined, and to identify the faulty interactions. Using the $\mathsf{TA}$, configurations can be tested concurrently on different servers and in any order. The $\mathsf{TA}$ always keeps the high reduction rate of potential faulty configurations in fault location analysis.",
keywords = "Algebra, Cloud computing, cloud computing, combinatorial testing (CT), Fault location, fault location analysis, Program processors, Software as a service, software-as-a-service (SaaS), Testing",
author = "Guanqiu Qi and Tsai, {Wei Tek} and Charles Colbourn and Jie Luo and Zhiqin Zhu",
year = "2018",
month = "6",
day = "26",
doi = "10.1109/TR.2018.2833449",
language = "English (US)",
journal = "IEEE Transactions on Reliability",
issn = "0018-9529",
publisher = "Institute of Electrical and Electronics Engineers Inc.",

}

TY - JOUR

T1 - Test-Algebra-Based Fault Location Analysis for the Concurrent Combinatorial Testing

AU - Qi, Guanqiu

AU - Tsai, Wei Tek

AU - Colbourn, Charles

AU - Luo, Jie

AU - Zhu, Zhiqin

PY - 2018/6/26

Y1 - 2018/6/26

N2 - A new algebraic system, test algebra ($\mathsf{TA}$), is proposed for identifying faults in combinatorial testing for software-as-a-service (SaaS) applications. In the context of cloud computing, SaaS is a new software delivery model, in which mission-critical applications are composed, deployed, and executed on cloud platforms. Testing SaaS applications is challenging because new applications need to be tested once they are composed, and prior to their deployment. A composition of components providing services yields a configuration providing an SaaS application. While individual components in the configuration may have been thoroughly tested, faults still arise due to interactions among the components composed, making the configuration faulty. When there are $k$ components, combinatorial testing algorithms can be used to identify faulty interactions with $t$ or fewer components, for some threshold $2 \le t \le k$ on the size of interactions considered. In general, these methods do not identify specific faults, but rather indicate the presence or absence of some faults. To identify specific faults, an adaptive testing regime repeatedly constructs and tests configurations in order to determine, for each interaction of interest, whether it is faulty or not. In order to perform such testing in a loosely coupled distributed environment such as the cloud, it is imperative that testing results can be combined from many different servers. The $\mathsf{TA}$ defines rules to permit results to be combined, and to identify the faulty interactions. Using the $\mathsf{TA}$, configurations can be tested concurrently on different servers and in any order. The $\mathsf{TA}$ always keeps the high reduction rate of potential faulty configurations in fault location analysis.

AB - A new algebraic system, test algebra ($\mathsf{TA}$), is proposed for identifying faults in combinatorial testing for software-as-a-service (SaaS) applications. In the context of cloud computing, SaaS is a new software delivery model, in which mission-critical applications are composed, deployed, and executed on cloud platforms. Testing SaaS applications is challenging because new applications need to be tested once they are composed, and prior to their deployment. A composition of components providing services yields a configuration providing an SaaS application. While individual components in the configuration may have been thoroughly tested, faults still arise due to interactions among the components composed, making the configuration faulty. When there are $k$ components, combinatorial testing algorithms can be used to identify faulty interactions with $t$ or fewer components, for some threshold $2 \le t \le k$ on the size of interactions considered. In general, these methods do not identify specific faults, but rather indicate the presence or absence of some faults. To identify specific faults, an adaptive testing regime repeatedly constructs and tests configurations in order to determine, for each interaction of interest, whether it is faulty or not. In order to perform such testing in a loosely coupled distributed environment such as the cloud, it is imperative that testing results can be combined from many different servers. The $\mathsf{TA}$ defines rules to permit results to be combined, and to identify the faulty interactions. Using the $\mathsf{TA}$, configurations can be tested concurrently on different servers and in any order. The $\mathsf{TA}$ always keeps the high reduction rate of potential faulty configurations in fault location analysis.

KW - Algebra

KW - Cloud computing

KW - cloud computing

KW - combinatorial testing (CT)

KW - Fault location

KW - fault location analysis

KW - Program processors

KW - Software as a service

KW - software-as-a-service (SaaS)

KW - Testing

UR - http://www.scopus.com/inward/record.url?scp=85049129945&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85049129945&partnerID=8YFLogxK

U2 - 10.1109/TR.2018.2833449

DO - 10.1109/TR.2018.2833449

M3 - Article

JO - IEEE Transactions on Reliability

JF - IEEE Transactions on Reliability

SN - 0018-9529

ER -