Ritcag: a rule-based, intellitgent test case generator


The Rule-based, Intelligent Test Case Generator (RITCaG) is a test tool that automatically generates unique and relevant test cases for rule-based expert systems. The objective of this tool is to validate the performance of rule-based systems using a black box approach. It is designed to serve as an intelligent aid to a tester and provides a structured and systematic framework for system testing. It assumes that the knowledge base of the system being tested is complete and consistent. It is a generic test tool that can validate any rule-based system developed on ART (Automated Reasoning Tool) for any problem domain. RITCaG was developed on Symbolics and is coded in Symbolics Lisp. RITCaG interactively divides a knowledge base into contexts or seg1nents. The boundaries of each context may be determined based on domain characteristics or logic constraints. Segmenting a knowledge base makes testing easier and more efficient. RITCaG uses an object-oriented architecture to represent contexts, rules and conditions in a knowledge base. This architecture supports the validation and verification of the frequent changes and updates that are made to a knowledge base. Each test case generated by RITCaG is also represented as an object that can be easily viewed. Equivalence classes are used as a strategy to reduce the size of the input domain to be tested. This strategy is highly beneficial to the test process because the benefits of exhaustive testing can be derived from a reduced input set. Tvvo types of equivalence classes are created in RITCaG. The Legal Equivalence Class is based on legal and valid inputs while the Illegal Equivalence Class is based on illegal and invalid inputs. RITCaG generates two types of test cases: Error-free and Error-seed. Error-free test cases are designed to test if a system's perforn1ance matches its functional specifications and are derived from the Legal Equivalence Class. Error-seed test cases are designed to test a syst;en1's level of brittleness and are based on the Illegal Equivalence Class . RITCaG 1nin1ics the real-world perf orn1ance of an intelligent systc1n bv testing situations, were a situation is defined as a sequence of dependent rules. In other words, if a rule activates another rule, then both rules are tested. A knowledge base can be viewed as a hierarchical model with three levels: con texts, rules and conditions, respectively. There are three approaches in RITCaG to incrementally and independently test each level in this hierarchy. They are Context-wise, Rule-wise and Condition-wise testing. RITCaG captures the intuition and experience of the tester by allowing the user to selectively implement test cases. In other words, instead of auton1atically activating all generated test cases, RITCaG gives the user the choice to selectively activate test cases with unique test goals. An error file is created and maintained of all errors detected during each test session. This file identifies the rules and the paths along which the error was detected. A history of all generated and implemented test cases is maintained and feed back is given on contexts and rules not tested during a test session.


This item is only available in print in the UCF Libraries. If this is your thesis or dissertation, you can help us make it available online for use by researchers around the world by STARS for more information.

Graduation Date





Swart, William W.


Doctor of Philosophy (Ph.D.)


College of Engineering


Industrial Engineering and Management Systems




99 p.



Length of Campus-only Access


Access Status

Doctoral Dissertation (Open Access)




Dissertations, Academic -- Engineering; Engineering -- Dissertations, Academic

This document is currently not available here.