For good global information about software testing, please visit [Software testing on Wikipedia.org].
To summarise, in general testing can be done on the following levels:
A Quaestor knowledge based system is based on three parts:
Depending on the position you take within the components of the total knowledge based system, the procedure can be used for the total knowledge based system and for each part individually. Please realize that, after delivery, the responsibility for the knowledge base (and projects based on it) becomes the responsibility of the knowledge engineer. In other words, for testing of the total knowledge based system, there is a separation in testing done by Qnowledge prior to release of a new Quaestor version and testing done by the knowledge engineer for release of a specific knowledge based system within an organization.
- The modeler/inference engine: creating of models, reasoning with the knowledge;
- The solver: for determination of iterative problems;
- Interpreter: interpretation of expressions;
- Data management: loading and saving of projects, working with the Quaestor the Quaestor project file database;
- TeLiTab/Object generation, manipulation and management;
- Knowledge engineering;
- File operations: loading and saving of file types;
- GUI behavior;
To test these parts we have developed several tools.
- A knowledge base qnowledge.qkb containing most of the intrinsic the intrinsic functions;
- A project with the version number of the release it corresponds to. This project contains solutions which can be repeated in the new release to test most of the above aspects;
- A document with a procedure to assist testing the different aspect above;
B. For Taxonomy applications we For Taxonomy applications we have developed some additional tools:
When both tools are used and results are compared and equal to the original project the of the sub-systems is passed.