Browse Prior Art Database

Verification of test scripts using XML DTDs

IP.com Disclosure Number: IPCOM000013402D
Original Publication Date: 2001-Mar-01
Included in the Prior Art Database: 2003-Jun-18
Document File: 2 page(s) / 45K

Publishing Venue

IBM

Abstract

Disclosed below is a system that abstracts the running of tests away from single complex test scripts and amalgamates the test scenario into an XML and Java TM based framework known as Veriti (Verification Testing Initiative).

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 2

Verification of test scripts using XML DTDs

Disclosed below is a system that abstracts the running of tests away from single complex test scripts and amalgamates the test scenario into an XML and Java TM based framework known as Veriti (Verification & Testing Initiative).

    Automated testing of products is often as complex as the product itself. The testing of a system is often flawed due to incorrect and/or unrepeatable creation of an environment. This system provides a method whereby the definition of the tests is defined within XML which is easily readable, storable and thus debuggable.

    During the testing of a system there are three phases: "setup" - setting up the correct software/environment; "runtime" - running the test; "cleanup" - removing any changes to the environment so as to provide a "clean" system ready for the next test to be run. Veriti takes in an XML script that defines these three phases. During each phase it sends the "instructions" to "utility" Objects that understand what the instructions mean. Based on the instructions given to it and the "context" of the instructions the utility Object (which, for example, may be written in Java) performs the appropriate action.

    Let us take an example - that of setting up a queue using the IBM MQSeries® product for a test and then removing it once the test has been completed.

    The sample test script would look like - <Test name="testone">

<Setup>

<MQInstruction>

<QueueManager name="TESTQM">

             <Queue name="TEST.QUEUE"> </QueueManager>
</MQInstruction>
</Setup>
<Runtime>

.....

.....

</Runtime> <Cleanup>

<MQInstruction>

<QueueManager name="TESTQM">

                 <Queue name="TEST.QUEUE"> </QueueManager>
</MQInstruction>
</Cleanup>
</Test>

    This script would create the queue manager called TESTQM and then create the queue called TEST.QUEUE. The logic that goes on within Veriti is thus:

Read first instruction (Setup)

It's an MQInstruction and it's within the "setup" context of the XML so call the


1.


2.

MQ.Setup(Instruction) method

1

Page 2 of 2


3.


4.


5.


6.


7.


8.


9.

The MQ Object understands the XML and realises that because it is in the setup

method that it needs to create the QueueManager and the queue. Read next instruction (runtime)

The runtime instructions are carried out and results logged.

It's an MQInstruction and it's within the "Cleanup" context of the XML so call the

MQ.cleanup(Instruction) method. The MQ Object unders...