Coverage Criteria for State-Based Testing: A Systematic Review

Sonali Pradhan, M. Ray, S. Patnaik
{"title":"Coverage Criteria for State-Based Testing: A Systematic Review","authors":"Sonali Pradhan, M. Ray, S. Patnaik","doi":"10.4018/IJITPM.2019010101","DOIUrl":null,"url":null,"abstract":"State-based testing (SBT) is known as deriving test cases from state machines and examining the dynamic behaviour of the system. It helps to identify various types of state-based faults within a system under test (SUT). For SBT, test cases are generated from state chart diagrams based on various coverage criteria such as All Transition, Round Trip Path, All Transition Pair, All Transition Pair with length 2, All Transition Pair with length 3, All Transition Pair of length 4 and Full Predicate. This article discuses a number of coverage criteria at the design level to find out various types of state-based faults in SBT. First, the intermediate graph is generated from a state chart diagram using an XML parser. The graph is traversed based on the given coverage criteria to generate a sequence of test cases. Then, mutation testing and sneak-path testing are applied on the generated test cases to check the effectiveness of the generated test suite. These two are common methods for checking the effectiveness of test cases. Mutation testing helps in the number of seeded errors covered whereas sneak-path testing basically helps to examine the unspecified behavior of the system. In round trip path (RTP), it is not possible to cover all paths. All transition is not an adequate level of fault detection with more execution time compared to all transition pair (ATP) with length 4 (LN4). In the discussion, ATP with LN4 is the best among all coverage criteria. SBT can able to detect various state-based faults-incorrect transition, missing transition, missing or incorrect event, missing or incorrect action, extra missing or corrupt state, which are difficult to detect in code-based testing. Most of these state-based faults can be avoided, if the testing is conducted at the early phase of design.","PeriodicalId":375999,"journal":{"name":"Int. J. Inf. Technol. Proj. Manag.","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2019-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"9","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Int. J. Inf. Technol. Proj. Manag.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4018/IJITPM.2019010101","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 9

Abstract

State-based testing (SBT) is known as deriving test cases from state machines and examining the dynamic behaviour of the system. It helps to identify various types of state-based faults within a system under test (SUT). For SBT, test cases are generated from state chart diagrams based on various coverage criteria such as All Transition, Round Trip Path, All Transition Pair, All Transition Pair with length 2, All Transition Pair with length 3, All Transition Pair of length 4 and Full Predicate. This article discuses a number of coverage criteria at the design level to find out various types of state-based faults in SBT. First, the intermediate graph is generated from a state chart diagram using an XML parser. The graph is traversed based on the given coverage criteria to generate a sequence of test cases. Then, mutation testing and sneak-path testing are applied on the generated test cases to check the effectiveness of the generated test suite. These two are common methods for checking the effectiveness of test cases. Mutation testing helps in the number of seeded errors covered whereas sneak-path testing basically helps to examine the unspecified behavior of the system. In round trip path (RTP), it is not possible to cover all paths. All transition is not an adequate level of fault detection with more execution time compared to all transition pair (ATP) with length 4 (LN4). In the discussion, ATP with LN4 is the best among all coverage criteria. SBT can able to detect various state-based faults-incorrect transition, missing transition, missing or incorrect event, missing or incorrect action, extra missing or corrupt state, which are difficult to detect in code-based testing. Most of these state-based faults can be avoided, if the testing is conducted at the early phase of design.
基于状态的测试覆盖标准:系统回顾
基于状态的测试(SBT)被称为从状态机派生测试用例并检查系统的动态行为。它有助于在被测系统(SUT)中识别各种类型的基于状态的故障。对于SBT,测试用例是从基于各种覆盖标准的状态图表中生成的,例如所有转换、往返路径、所有转换对、长度为2的所有转换对、长度为3的所有转换对、长度为4的所有转换对和完整谓词。本文讨论了一些设计层面的覆盖准则,以找出SBT中各种类型的基于状态的故障。首先,使用XML解析器从状态图生成中间图。基于给定的覆盖标准遍历图,以生成一系列测试用例。然后,对生成的测试用例进行突变测试和潜行路径测试,以检验生成的测试套件的有效性。这两种是检查测试用例有效性的常用方法。突变测试有助于确定所覆盖的种子错误的数量,而潜行路径测试基本上有助于检查系统的未指定行为。在往返路径(RTP)中,不可能覆盖所有路径。与长度为4 (LN4)的所有转换对(ATP)相比,所有转换都不是一个足够的故障检测级别,执行时间更长。在讨论中,ATP与LN4是所有覆盖标准中最好的。SBT能够检测到各种基于状态的故障——错误的转换、缺失的转换、缺失或不正确的事件、缺失或不正确的动作、额外的缺失或损坏的状态,这些是基于代码的测试难以检测到的。如果在设计的早期阶段进行测试,大多数基于状态的错误都是可以避免的。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信