Functional Test Case Generation Capabilities of inteGREAT Studio
Software testing is becoming more complex and demands for new techniques and methods to assure software quality. System testing method is used to verify those requirements are successfully implemented. System test cases are obtained from functional requirements and use cases are widely used to define functional requirements.
Denger and Gutierrez survey analyzed 13 approaches to derive test cases from the functional requirements. These approaches have got some solved and unsolved aspects in the process of generation of test cases. The survey concludes that approaches work at a theoretical level without describing how to generate executable test cases.
inteGREAT Studio has practically solved one of the approach of test case generation process and the solution it is fully compliance with Heumann02 approach deriving test cases from the use cases. User has to develop a model to express the functionality expected in the system in terms of use cases and system test cases can easily be derived from them.
System testing can be divided into two stages.
-
The first stage verifies the behavior of each use case in isolation
-
The second stage verifies the use cases work and satisfy integration requirement
inteGREAT Studio is fully compliance with the first stage approach and deriving adequate number of functional test cases from functional requirements (use cases). Future work scope includes the second stage of integration requirements currently its design and specification has been outlined and will be implemented and released in subsequent releases.
Test case categorization
inteGREAT Studio assures the delivery of high quality system, it generates the adequate test cases that are enough for comprehensive system test coverage. Test cases are categories in 4 different categories that help test managers to define what level of test execution is sufficient for any system.
-
Simple
-
Basic
-
Medium
-
Advance
Basic type of test case is designed on the logic of the McCabe’s Basis Path Testing. A basis path is a unique path through the software where no iterations are allowed - all possible paths through the system are linear combinations of them. Basic test cases are fit for BAT execution or minimum test coverage for any use case. Medium and Advance type of test cases are defined for comprehensive test coverage of the use case with all possible combination of alternate flows.
A basis path is a unique path through the software where no iterations are allowed - all possible paths through the system are linear combinations of them.
Format of Test Case Document
-
Test Case Name
-
Test Case Objective
-
Test Case ID
-
Category
-
Actors
-
Steps
-
Valid/Invalid Conditions
-
Expected Result
-
Related Verifications Points e.g Business Rule, Functional Requirement, Constraint, Dependency etc
-
Actual Result
The test case document runs with the combination of FVM document that defines the equivalence classes (valid and invalid data) and boundary conditions of all type of fields. FVM just not only covers the valid and invalid test data it also generate standard and consistent error message for each invalid data.
Test case Statistics
Test case document compute the test case complexity and statistics, given for each category that helps the manager to plan test execution duration. Test Complexity Index also compute the test coverage ratio between number of test cases and number of use case scenarios, that helps the user to understand the test coverage of the use case.
Test Coverage = Number of Test Case / Number of Use case Scenarios
Future Work
Second stage will cover the integration test cases and load test cases.