Journal of Computer Science and Technology (Aug 2005)
Structural testing with use cases
Abstract
Understanding how a user interacts with a system is important if the goal is to deliver a product that meets the user's needs. Use cases constitute a primary source of requirements in a user-centered perspective and are often utilized to derive acceptance tests. Given such a critical role in requirements engineering, we introduce a novel set of testing criteria based on the use case specification with a two-fold objective: to assess the quality of test cases derived from use cases and to test the use case specification itself. Differently from previous approaches, the novel set of testing criteria requires that structural elements of the use cases be exercised at least once. To support the application of the new set of testing criteria, a testing coverage tool, called UCT - Use Case Tester, was developed. A case study using UCT shows that the new testing criteria are able to evaluate the quality of a test data set as well as to detect faults in use case specifications.