More Related Content
Similar to Rit 8.5.0 platform training slides
Similar to Rit 8.5.0 platform training slides (20)
More from Darrel Rader (6)
Rit 8.5.0 platform training slides
- 2. Intended audience
Primary target audience:
Software testers
Test managers
Secondary target audience:
System architects
Software developers
2
© Copyright IBM Corporation 2001, 2013
- 3. Prerequisites
This course assumes that you have taken the following
courses or have a knowledge of:
XML or other message schemas
Web services, JMS, or IBM® WebSphere® MQ
3
© Copyright IBM Corporation 2001, 2013
- 8. Types of testing
White box – testing concerned with the internal
structure of the program.
Gray box – using the logical relationships to
analyze the input and output of the program.
Examination of logs, databases, message
schemas, design outputs, and so on.
Black box – testing concerned with input and
output of the program.
8
INPUT
OUTPUT
© Copyright IBM Corporation 2001, 2013
- 10. Basic terminology
Message
Unit of information sent or received
Schema
Structure of fields, types, and values
Transport
Method of communication between components
10
© Copyright IBM Corporation 2001, 2013
- 11. Build and send payloads 1
Payload
11
© Copyright IBM Corporation 2001, 2013
- 12. Build and send payloads 2
Payload
Formatter
12
© Copyright IBM Corporation 2001, 2013
- 13. Build and send payloads 3
SOAP
XML
Formatter
SWIFT
COBOL Copybook
Schema
DTD
XSD
WSDL
EDI
JSON
FIX
Text
MIME
Byte Array
Java Objects
Payload
SAP BAPI/RFC/IDOC
TIBCO ActiveEnterprise
webMethods IB and IS Documents
Others…
13
© Copyright IBM Corporation 2001, 2013
- 14. Build and send payloads 4
Payload
Formatter
Schema
Test Data
14
© Copyright IBM Corporation 2001, 2013
- 15. Build and send payloads 5
Payload
JMS
webMethods
Formatter
HTTP/S
FTP
NDM
Oracle/BEA
JDBC
Sonic MQ
TCP/UDP
PL/SQL
Flat Files
Shell commands
TIBCO EMS
TIBCO iProcess
Schema
Test Data
Transport
TIBCO Rendezvous
IBM WebSphere® MQ
Others…
15
© Copyright IBM Corporation 2001, 2013
- 16. Payload benefits
Concentrate on business data, not payload syntax
• Reduce errors
• Reduce complexity
• Improve productivity
Reuse the same skills with different payload types.
16
© Copyright IBM Corporation 2001, 2013
- 17. Levels of testing
COMPONENT
INTERFACE
TESTING
UNIT
TESTING
INTEGRATION
TESTING
Rational
Integration Tester
Rational
Integration Tester
JUNIT
E2E TESTING
Rational
Functional Tester
or Rational
Integration Tester
•
•
•
•
•
17
Unit testing
framework
•
Code branch
coverage
•
White box
testing
•
Security tested
at code level
GUI-less
testing
Simulated
services
•
Driven by
design outputs
•
Orchestrated
testing
Multiple
workstreams
•
Simulated
services
•
Passing values
between tests
Share design
outputs
•
Multiple
technologies
•
GUI and GUIless testing
•
Interface
performance
testing
© Copyright IBM Corporation 2001, 2013
- 18. Software Development Life Cycle
Requirements
Architecture
Infrastructure
Fitness for Purpose
Potential Reuse
Unit Test
Simulation
Build Server
Coverage
Design
Run
Diagnostics
Performance Test
Coverage
Production Data
Reuse
18
Build
Test
Regression Test
Functional Test
Integration Test
Simulation
Coverage
Performance Test
UAT
© Copyright IBM Corporation 2001, 2013
- 20. OS support
Supported Operating Systems (Rational Integration Tester)
Microsoft Windows
Solaris SPARC
Red Hat Linux / SUSE Linux
OS X
AIX
Other Supported Operating Systems (Tools)
z/OS ®
zLinux
External libraries required
20
© Copyright IBM Corporation 2001, 2013
- 23. Before starting a project
There are a number of things that might need to be
installed or configured before starting a new project:
• Library Manager
• Project Location
• Results Database
• Rational Test Control Panel
• Rational Integration Tester Platform Pack
23
© Copyright IBM Corporation 2001, 2013
- 24. Before starting: Library Manager
Rational Integration Tester requires third-party libraries to
work with various transports or messages. These are set up
in the Library Manager.
24
© Copyright IBM Corporation 2001, 2013
- 25. Before starting: Library Manager
The Library Manager must be run on first install and
whenever new libraries are required. Rational Integration
Tester or the agent must be restarted after making changes!
25
© Copyright IBM Corporation 2001, 2013
- 26. Before starting: Project location
Each project is stored in its own folder; individual tests,
stubs, and other resources are stored as files in that
hierarchy.
If a project is to be shared, consider version control.
Rational Integration Tester supports Eclipse Team
Providers, allowing the use of a variety of version
control systems.
26
© Copyright IBM Corporation 2001, 2013
- 27. Before starting: Results database
A database is recommended for storing test
results. This will make it easy to:
• Review test results
• Share test results through the GUI or web server
One database can be used for multiple projects,
and by multiple users.
27
© Copyright IBM Corporation 2001, 2013
- 28. Before starting: Results database
To create a results database, set up a new
database and run the provided script. Upgrade
scripts are provided for any schema updates.
Supported database providers: Oracle, MySQL,
MS SQL, IBM DB2®
28
© Copyright IBM Corporation 2001, 2013
- 29. Before starting: Rational Test Control Panel
The Rational Test Control Panel manages:
• Proxies for recording HTTP/TCP/JDBC traffic
• Scheduling runs of tests or test suites
• Deployment of stubs within an environment
• A web interface to the results database
29
© Copyright IBM Corporation 2001, 2013
- 30. Before starting: Rational Integration Tester Platform Pack
Rational Integration Tester can interact with some
technologies directly – it requires help for some others.
The platform pack is a set of tools that can interact with
the system under test on behalf of Rational Integration
Tester.
30
© Copyright IBM Corporation 2001, 2013
- 31. Before starting: Rational Integration Tester Platform Pack
Platform Pack Components:
• HTTP(S)/TCP Proxy
• HTTP Proxy Configuration Tool
• JDBC Proxy
• IBM WebSphere MQ Exit for System z ®
• IBM CICS ® Transaction Gateway Proxy
• IBM CICS Transaction Server Proxy
• Java Virtualization Agent
• IBM Rational Test Control Panel ANT Client
31
© Copyright IBM Corporation 2001, 2013
- 33. The initial screen
The initial screen of
Rational Integration
Tester provides fast
access to existing
projects, and the creation
of new ones.
33
© Copyright IBM Corporation 2001, 2013
- 34. Creating a new project
Creating a new project:
1. Name and location
2. Server Settings
3. User Permissions
4. Change Management
34
© Copyright IBM Corporation 2001, 2013
- 36. Project permissions
User-based
permissions can be
set up for the
project using LDAP.
The project can be
restricted to certain
users, and different
users can have
different
capabilities.
36
© Copyright IBM Corporation 2001, 2013
- 40. Lab: Creating the training project
Complete the following tasks:
Module 3.3: Create a new project in
Rational Integration Tester
40
© Copyright IBM Corporation 2001, 2013
- 41. IBM Rational Integration Tester Platform Training
Modeling the system under test
© Copyright IBM Corporation 2001, 2013
- 42. Architecture School
In order to effectively test a complex system, we need
to understand how it functions and fits together.
Within the Architecture School, we define a model of
this system.
The model supplies Rational Integration Tester with
data that will be used as a foundation for building tests
and stubs.
42
© Copyright IBM Corporation 2001, 2013
- 44. Logical and Physical View
Logical View
provides an abstract
view of the system
under test.
44
Physical View
provides all physical
settings for
infrastructure.
© Copyright IBM Corporation 2001, 2013
- 47. AddNumbers – a simple example
Before we look at complex examples, we will build a
very simple example of a system model. This will cover
a basic web service that adds a pair of numbers.
47
© Copyright IBM Corporation 2001, 2013
- 48. Logical View
Logical View provides an abstract view of the
system under test.
Components, their dependencies, and
interface patterns can all be viewed here.
48
© Copyright IBM Corporation 2001, 2013
- 49. Service Components
Service Components expose one or more
operations to be tested. Service components can
be simple (no child components) or composite
(one or more child components).
49
© Copyright IBM Corporation 2001, 2013
- 50. Operations
Operations are interfaces that define a service
component’s functionality.
Each operation contains a Message Exchange
Pattern, describing how to establish communications.
50
© Copyright IBM Corporation 2001, 2013
- 52. Dependencies
Dependencies represent a reference from one
operation to another, or from an operation to an
infrastructure component.
Outgoing dependencies are displayed in lavender,
and incoming dependencies are displayed in green.
Dependencies are only displayed for items in the
diagram that are selected.
52
© Copyright IBM Corporation 2001, 2013
- 53. Lab: Setting up the Logical View for a simple system
Complete the following tasks:
Module 4.4: Build the Logical View
for the addNumbers web service
53
© Copyright IBM Corporation 2012
- 54. Physical View
Physical View describes all configurations of the
infrastructure that might be used by the system to
provide the functionality described in Logical View.
54
© Copyright IBM Corporation 2001, 2013
- 55. Physical resources
Physical resources are testable resources (such as
databases and web servers) representing a single
configuration of an infrastructure component.
55
© Copyright IBM Corporation 2001, 2013
- 56. Testing transports
After creating a physical resource for a transport, click
the Test Transport button. This checks:
• The correct settings have been entered in the
Physical View.
• The Library Manager has been correctly configured
for this type of physical resource.
• The resource is active, and Rational Integration
Tester can connect to it.
56
© Copyright IBM Corporation 2001, 2013
- 59. Environments
A new project starts with no environment selected. A
new environment can be created through the menu
option Project > Create New Environment.
59
© Copyright IBM Corporation 2001, 2013
- 60. Bindings
The connections between logical and physical
components within each environment are defined as a
set of bindings.
60
© Copyright IBM Corporation 2001, 2013
- 61. Environments – Hints and tips
The current environment is displayed in the title bar.
Change the current environment by selecting
Project > Switch to Environment.
Hover over a logical component to see its current
binding.
Right-click a logical component and select Physical
Resource to jump to the corresponding physical
component.
61
© Copyright IBM Corporation 2001, 2013
- 62. Lab: Physical View and Environments
Complete the following tasks:
Module 4.6: Build the Physical
View for the addNumbers web
service
Module 4.8: Create the
environment and bindings for the
addNumbers web service
62
© Copyright IBM Corporation 2001, 2013
- 63. Message schemas
Once we understand the architecture of the system, we
need to understand how messages are used within the
system.
There are two parts to this:
• Setting up the message schemas
• Configuring message exchange patterns
63
© Copyright IBM Corporation 2001, 2013
- 64. Schema Library
The Schema Library provides all schemas in one place,
along with a preview of message formats.
64
© Copyright IBM Corporation 2001, 2013
- 65. Message Exchange Patterns
Each operation has a Message Exchange Pattern
(MEP) describing how it communicates:
• Message schemas
• Logical transport
• Transport settings
65
© Copyright IBM Corporation 2001, 2013
- 66. Message Exchange Patterns
Each MEP can be configured as:
• Request/Reply
• Publish/Subscribe
• Publish
• Subscribe
Use Request/Reply when the client determines exactly where
the message will be going (for example, using a web service)
Use Publish/Subscribe, Publish, or Subscribe when the client
does not know the final destination of the message (for example,
using a JMS topic)
66
© Copyright IBM Corporation 2001, 2013
- 67. Lab: Schemas and MEP
Complete the following tasks:
Module 4.9: Import the message
schema for the addNumbers web
service
Module 4.10: Set up the Message
Exchange Pattern for the
addNumbers web service.
67
© Copyright IBM Corporation 2001, 2013
- 69. Requirements Library
In Rational Integration Tester, requirements are
messages.
Developers, analysts, and testers can create
requirements at the beginning of the lifecycle.
The messages can then be reused throughout the
lifecycle of the project.
69
© Copyright IBM Corporation 2001, 2013
- 71. Message Editor
The Message Editor
provides editing of
messages in a tree
format, along with
validation and storage
settings.
72
© Copyright IBM Corporation 2001, 2013
- 72. Messaging actions
Value
Provides a value when publishing a message
Filter
Filters incoming data
Assert
Validates incoming data
Store
Saves data for later use
73
© Copyright IBM Corporation 2001, 2013
- 73. Creating requirements
There are several ways to create new requirements:
• Create a new blank message and edit
Apply a schema and edit further
Copy and paste a message from another source
• Use the MEP to create a request or reply message
74
© Copyright IBM Corporation 2001, 2013
- 74. Lab: Requirements Library
Complete the following tasks:
Module 5.3: Build a requirement by
importing a message from an
external file
Module 5.4: Build a requirement
using a schema
Module 5.5 (Advanced): further
exploration of requirements
75
© Copyright IBM Corporation 2001, 2013
- 76. Recording Studio
The Recording Studio allows us to nonintrusively
review and record events sent to and from the
system under test.
These events can then be used as a source of tests,
stubs, and other interactions with the system.
77
© Copyright IBM Corporation 2001, 2013
- 78. Event Monitors
Transports and operations
can be selected for
monitoring in the Event
Monitors panel.
Event monitors can be
added or removed with
the and buttons.
79
© Copyright IBM Corporation 2001, 2013
- 79. Events View
Events View displays recorded events. These can be
sorted by the default fields, or by event-specific fields.
80
© Copyright IBM Corporation 2001, 2013
- 80. Supported transports
Recording is supported for a subset of the transports
available in Rational Integration Tester:
HTTP / HTTPS
TCIP/IP
JDBC (IBM DB2, Oracle, MS
SQL, MySQL)
IBM WebSphere MQ
JMS (Subscription only)
CICS Transaction Gateway
CICS DPL
81
TIBCO EMS
TIBCO Rendezvous
TIBCO BusinessWorks
webMethods Integration
Server
SAP IDOCs
FIX
IMS Connect
© Copyright IBM Corporation 2001, 2013
- 81. How does recording work?
Events are recorded in different ways for different
technologies. In some cases, we can read directly from
the transport; in others, we need some tools to help us.
For this example, we will look at how we record HTTP
traffic using the Rational Integration Tester Proxy.
82
© Copyright IBM Corporation 2001, 2013
- 82. Web services: normal operation
Client
application
83
HTTP
Web service
© Copyright IBM Corporation 2001, 2013
- 83. Web services: adding the proxy
Client
application
84
HTTP
Rational
Integration
Tester Proxy
HTTP
Web service
© Copyright IBM Corporation 2001, 2013
- 85. Lab: Recording Studio
Complete the following tasks:
Module 6.3: Record messages sent
to the addNumbers web service
86
© Copyright IBM Corporation 2001, 2013
- 88. Test structure
Tests consist of 3 sections:
Initialise, Test Steps, and
Tear-down.
Test Steps should hold the
main body of the test.
Initialise and Tear-down steps
are best used for setup and
clean-up tasks, such as
clearing database tables or
moving files.
89
© Copyright IBM Corporation 2001, 2013
- 89. Test structure
Initialise and Tear-down
actions may only run once
(for example, in performance
tests).
Some test actions will force a
test to skip all further Test
Steps, and go straight to the
Tear-down section.
90
© Copyright IBM Corporation 2001, 2013
- 90. Tests
Tests can contain short
or long sets of actions.
These generally flow
sequentially, though
logic can also be coded
into the test flow.
91
© Copyright IBM Corporation 2001, 2013
- 91. Technical View and Business View
Technical View:
Pregenerated
description of each
action in the test.
Business View:
User-created labels
for each action.
92
© Copyright IBM Corporation 2001, 2013
- 92. Creating tests
1. New Test – creates a blank test.
2. New Test from MEP – generate messages based
on the Message Exchange Pattern (given in the
Logical View).
3. New Test from captured messages – create a test
using data captured in Recording Studio.
4. New Test from Template – use a preconfigured
template as a base for a new test.
93
© Copyright IBM Corporation 2001, 2013
- 93. Editing tests
New actions can be added
to tests from the context
menu and the Test Steps
toolbar.
Test steps can be
reordered by dragging and
dropping.
Each step can be edited by
double-clicking.
94
© Copyright IBM Corporation 2001, 2013
- 94. Lab: Test Factory
Complete the following tasks:
Module 7.4: Create a test based on
messages recorded for the
addNumbers web service
Module 7.6: Create a test based on
the addNumbers MEP
95
© Copyright IBM Corporation 2001, 2013
- 97. Running tests
Run a test in the Test Lab by double-clicking in the
execution tree, clicking the Run button, or
pressing F5.
Extra options can be selected through the Run…
command. These include:
• Changing environment
• Scheduling test execution
• Deploying tests to other computers
98
© Copyright IBM Corporation 2001, 2013
- 98. Task Monitor
The Task Monitor displays each instance of a test,
showing a progress bar and the status (pass/fail) of
each completed test.
99
© Copyright IBM Corporation 2001, 2013
- 99. The Console
The console shows the execution status of the selected
test run. Logging information will be displayed here.
100
© Copyright IBM Corporation 2001, 2013
- 100. Lab: Test Lab
Complete the following tasks:
Module 8.2: Run the tests that you
have created for the addNumbers
service.
101
© Copyright IBM Corporation 2001, 2013
- 102. Test Suites
After developing tests, you can automate them, rather
than executing them manually.
To manage the execution of a group of tests, add
them to a test suite.
103
© Copyright IBM Corporation 2001, 2013
- 103. Scenarios
Test suites contain a number of scenarios. Scenarios
contain tests, performance tests, test suites, or other
scenarios.
Each scenario dictates how the tests will be run.
104
© Copyright IBM Corporation 2001, 2013
- 104. Lab: Test Suites
Complete the following tasks:
Module 9.2: Create and run a test
suite using the tests that you have
created for the addNumbers web
service.
105
© Copyright IBM Corporation 2001, 2013
- 105. The Results Gallery displays an execution summary
and detailed coverage, error, and performance reports
for test suites that have been run in the project.
106
© Copyright IBM Corporation 2001, 2013
- 107. Results Gallery
Results from test suites are stored in the project
database. Reports are generated from this data,
and are available through the results gallery.
Reports can also be managed in this perspective.
108
© Copyright IBM Corporation 2001, 2013
- 108. Notes
Test runs can be labelled for future reference, and
notes can be added.
109
© Copyright IBM Corporation 2001, 2013
- 109. Lab: Results Gallery
Complete the following tasks:
Module 9.4: View your test suite
results in the Results Gallery.
110
© Copyright IBM Corporation 2001, 2013
- 111. Course legal notices
The following paragraph does not apply to the United Kingdom or any other country where such provisions
are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS
PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT
NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS
FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain
transactions, therefore, this statement may not apply to you.
This information could include technical inaccuracies or typographical errors. Changes are periodically made to the
information herein; these changes will be incorporated in new editions of the publication. IBM may make
improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time
without notice.
If you are viewing this information in softcopy, the photographs and color illustrations may not appear.
Any references in this information to non-IBM websites are provided for convenience only and do not in any manner
serve as an endorsement of those websites. The materials at those websites are not part of the materials for this IBM
product and use of those websites is at your own risk.
Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained
in other operating environments may vary significantly. Some measurements may have been made on developmentlevel systems and there is no guarantee that these measurements will be the same on generally available systems.
Furthermore, some measurements may have been estimated through extrapolation. Actual results may vary. Users
of this document should verify the applicable data for their specific environment.
Information concerning non-IBM products was obtained from the suppliers of those products, their published
announcements or other publicly available sources. IBM has not tested those products and cannot confirm the
accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities
of non-IBM products should be addressed to the suppliers of those products.
All statements regarding IBM's future direction or intent are subject to change or withdrawal without notice, and
represent goals and objectives only.
112
© Copyright IBM Corporation 2001, 2013
- 112. Course legal notices (cont.)
This information contains examples of data and reports used in daily business operations. To illustrate
them as completely as possible, the examples include the names of individuals, companies, brands,
and products. All of these names are fictitious and any similarity to the names and addresses used by
an actual business enterprise is entirely coincidental.
This information contains sample application programs in source language, which illustrate
programming techniques on various operating platforms. You may copy, modify, and distribute these
sample programs in any form without payment to IBM, for the purposes of developing, using,
marketing or distributing application programs conforming to the application programming interface for
the operating platform for which the sample programs are written. These examples have not been
thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability,
serviceability, or function of these programs. The sample programs are provided "AS IS", without
warranty of any kind. IBM shall not be liable for any damages arising out of your use of the sample
programs.
Trademarks and service marks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corp.,
registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other
companies. A current list of IBM trademarks is available on the web at www.ibm.com/legal/copytrade.shtml.
Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.
Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.
113
© Copyright IBM Corporation 2001, 2013