Article Preview
TopIntroduction
Testing at the early phase of software development life cycle can able to find the ambiguities and inconsistencies in the design and hence, design should be enhanced before the program is written (Antonio et al., 2002; Sundararajan et al., 2017). Research is going on state-based testing (SBT) to find effective test cases and to minimize cost of the test suite (Agrawal et al., 1989; Holt et al., 2014). For this, Unified Modeling Language (UML) diagrams are used to generate test cases. Initially testers were going for traditional testing, which is also known as code coverage testing. But, state-based coverage cannot be achieved in code-based testing (Binder, 2000). To achieve this, tester generates test scenarios from the state chart diagrams and then test cases are generated from these scenarios. Test cases are generated at design level and coverage analysis is performed from the source code. The diagrams are generated at the design stage of development life cycle. Generating test cases based on UML diagrams come under Model Based Testing (MBT). It is a better testing approach than code-based testing as it detects the error at the early phase which requires less cost to fix it (Chen & Wang, 2014; Dias Neto et al., 2007). MBT are conducted for the following reasons:
- •
To get an abstract model of the system;
- •
Validate the model;
- •
Generate and execute test cases;
- •
Assigning pass/fail verdict;
- •
Analyzing the execution result;
- •
When it is not required to model the full system;
- •
To prevent fault;
- •
To reduce cost with updating test cases.
Early testing activities make early fault detection (Binder, 2000; Broy et al., 2005) and more and more articles are referred to as MBT using state-based testing. In a very recent article, we find in MBT, where it elaborates several findings from MBT users in industry, security testing and various MBT challenges (Utting et al., 2016). Utting and Legeard (Briand & Labiche, 2001) have proposed a SBT technique to design black box testing. State-based testing is primarily considered as a black box testing to generate test cases (Briand & Labiche, 2001).