MetaBoss Testing Framework Guide.
Introduction.
Overview
MetaBoss testing framework combines Service Interface Definitions
from MetaBoss Enterprise Model with XML technologies and offers
the following features:
- Ability to formally define test cases including Prerequisite conditions,
Parameters, Service invocation instructions and Result Acceptance criteria. By formally we mean
that the definitions are expressed in platform, programming language and technology independent XML format
in accordance with Service XML Schemas generated from the model.
- Ability to execute these test cases in sequence, measure performance and
log the test results in convenient form.
- Ability to compare current test results against previously saved specimen results
in order to detect any regression which might have occurred in the
newer version of the systems.
- Ability to rapidly build and use a simulated service implementation for any
new, as yet undeveloped service.
Note that this framework is based on the MetaBoss's ability to generate the Enterprise Services
XML Schema, which fully describes all Services in the enterprise. This schema includes definitions for
Operations, Input and Output values and Output messages. The schema is physically generated by one of the Service Adapter
generators - namely Generic Dom Elements Adapter generator. This generator creates one schema file per servicemodule
(note that the same rule is for namespaces - one namespace per servicemodule) and places it in the generated source directory all generated java source files.
Also a link to the schema document is provided from the Javadoc API documentation page for this adapter.
Comparison with JUnit framework
One of the most frequently asked questions related to the MetaBoss Testing Framework
is that How is this Framework different to JUnit? or Why not simply use JUnit?.
For the benefit of some readers let us mention that JUnit is a very popular Java based Testing framework. It contains
a java class library providing abstractions for the components of test and various test running utilities.
User of JUnit needs to extend classes in the class library and create families of Tests, Fixtures and Test Sutes.
Once this is done these tests could be executed in various ways.
Freedom of "native" Java gives JUnit user ability to test anything - from single java class to the big enterprise system.
However, with this freedom comes certain complexity in preparation and maintaining of the test cases
(eg. requirement for Java programmer to prepare test cases)
MetaBoss Testing Framework is similar to JUnit in spirit, but differs in following key aspects:
- Use of MetaBoss Testing Framework is limited to testing Services
(as in Service Oriented Architecture or SOA), which are formally modelled in the Enterprise Model.
- The advantage of this voluntary limitation is that the language in which tests are defined
is not a specific procedural programming language (eg. Java), but XML which is governed by
Service XML Schemas generated from Enterprise Model. This makes it possible to have and directly
execute Platform Independent Test Definitions based only on Platform Independent Model.
- JUnit is a testing framework only. MetaBoss Testing Framework also includes
simulation capability which allows to simulate behaviour of as yet uncoded Services again
based solely on Platform Independent XML data files.
|
Copyright © 2000-2005 Softaris Pty.Ltd. All Rights Reserved. MetaBoss is the registered trademark of Softaris Pty.Ltd. Java, Enterprise JavaBeans, JDBC, JNDI, JTA, JTS, JCA and other Java related APIs are trademarks or registered trademarks of Sun Microsystems, Inc. MDA, UML, MOF, CORBA and IIOP are trademarks or registered trademarks of the Object Management Group. Microsoft, .NET and C# are trademarks or registered trademarks of the Microsoft Corporation. All other product names mentioned herein are trademarks of their respective owners.
|