The service testing capabilities of IBM®
Rational® Performance Tester or IBM
Rational Service Tester for SOA Quality automate the
creation, execution and analysis of functional, regression and performance tests for SOAP-based web
services, including support for Java Messagine Service (JMS), Websphere MQ, WebSphere Java MQ, and
Microsoft .NET Windows Communication Foundation (WCF), as well as any service that produces XML,
plain text, or binary data.
Informative test results rely upon sound test development. Each
of the following stages contributes to generating meaningful test
results:
- Preparation. Set up your test environment with the libraries
and configuration files required for SOAP-based web services or custom
security algorithms. You can import Web Service Description Language
(WSDL) definition files and digital certificates that are required
by the web services to automatically generate your tests. You can
create SOAP security profiles with security algorithms for the web
service calls and message returns.
- Test creation: Create your test by recording the service
requests and responses either with the generic service client, or with an existing client or a web browser through a recording
proxy. When you start the recording, you interact with the service
by performing service requests and receiving responses. You can also
create service tests manually or from a synchronous Business Process
Execution Language (BPEL) model.
- Test editing: After recording, you can edit the requests
and responses in the test. You can use XML Schema Description (XSD)
documents to facilitate XML edition. You can replace recorded test
values with variable test data, or add dynamic data to the test.
- Functional testing: You can run the test to ensure that
service matches the expected behavior defined in verification
points. During the run, each verification point is checked
and receives a pass, fail or inconclusive status.
- Performance testing: If you are using IBM Rational Performance Tester, you can specify an execution schedule and user groups
to emulate a workload that is generated by a large number of virtual
users. Then, you can run the schedule, deploying test execution on
virtual users that can be hosted on remote computers. Each virtual
user runs an instance of the test client. Response times are measured
and recorded. Verification points are checked and recorded.
- Stub simulation: Service stubs are functional simulations
of an existing service. Service stubs are useful for replacing a service
that is unavailable or impractical to use in a test environment. They
can also be used to input specific data into a service under test
or for prototyping. You can deploy stubs onto a stub server, which
can replace the actual server in your test or development environment.
- Evaluation of results: You evaluate the results that the
tests produce through the performance and verification point reports
that are generated during execution. You can also design custom reports
by manipulating various counters. Functional reports provide a comprehensive
view of the behavior of the service under test. Reports can be exported
and archived for validation.
Service testing tools
The following tools
are available in the product:
- The generic service client enables you to
manually perform service requests for a wide variety of transport
protocols, authentication configurations and security profiles, making
it an extremely versatile service client. It effectively replaces
a dedicated client and can be used to record service calls or for
manual testing and debugging a service during development. To open
the generic service client, click the Generic Service Client toolbar button.
- The WSDL security editor allows you to set
up sophisticated algorithm stacks for your service requests
and responses. Algorithm stacks contain digital certificate information
and the security algorithms that are applied to messages to perform
secure communication with a web service. Algorithm stacks are made
of blocks, which can be key definitions, encryption , time stamp,
or signature operations which can be associated with any operation
in the WSDL file. To open the WSDL security editor, right-click a
WSDL file in your workspace and select Edit WSDL Security or click the WSDL Security Editor button in the generic
service client..
- The test editor is where you develop your
test. After recording, you can modify the test to add data correlation
or verification points. You can also add loops and conditions and
you can edit every detail of the service requests.
- The stub editor enables you to create service
stubs. With the stub editor, you can define multiple input conditions,
which are similar to verification points. Each condition triggers
a predefined simulated response, which is functionally identical to
a response from the simulated service.
- In Rational Performance Tester, the schedule editor lets you deploy multiple virtual
users on local and remote computers to generate a heavy load for performance
testing. A schedule typically contains multiple tests and multiple
virtual users.