ghtester_tibco
TRANSCRIPT
GH Tester v3
TIBCO Plugin
Green Hat
107-111 Fleet Street
London EC4A 2AB
+44 (0)20 7936 9303
www.greenhatsoftware.com
2006 Green Hat Consulting Ltd 23/06/2006 2
Contents
1 Introduction......................................................................................................................3 1.1 Purpose........................................................................................................... 3 1.2 Intended Audience............................................................................................ 3 1.3 Scope.............................................................................................................. 3 1.4 Typographical Conventions ................................................................................ 3 1.5 Related Documentation ..................................................................................... 3 1.6 Terms and Definitions ....................................................................................... 4
2 Installation .......................................................................................................................5 2.1 Prerequisites .................................................................................................... 5
2.1.1 TIBCO Rendezvous Messaging ................................................................ 5 2.1.2 TIBCO Active Enterprise Messaging ......................................................... 5
3 TIBCO Rendezvous Transport ..........................................................................................6 3.1 Product compatibility......................................................................................... 6 3.2 Libraries .......................................................................................................... 6
3.2.1 Windows 2000 & XP .............................................................................. 6 3.3 Transport Configuration..................................................................................... 7
3.3.1 Reliable RV........................................................................................... 7 3.3.2 Certified Messaging ............................................................................... 7 3.3.3 Distributed Queues................................................................................ 8
4 TIBCO Active Enterprise Transport ..................................................................................9 4.1 Product compatibility......................................................................................... 9 4.2 Libraries .......................................................................................................... 9
4.2.1 Windows 2000 & XP .............................................................................. 9 4.3 Transport Configuration................................................................................... 10
4.3.1 Project Directory ................................................................................. 11 4.3.2 Local Repository.................................................................................. 11 4.3.3 Server Repository ................................................................................ 11
4.4 TIBCO Multi-file projects.................................................................................. 12 4.5 Using Schema elements .................................................................................. 13
4.5.1 Sequence types .................................................................................. 13 4.5.2 Any types........................................................................................... 13 4.5.3 Union Types ....................................................................................... 14 4.5.4 Setting the Container’s Value Action ...................................................... 14
5 Creating GH Tester Projects from BusinessWorks ........................................................15 5.1 The BusinessWorks Wizard .............................................................................. 15 5.2 Choose your BusinessWorks project .................................................................. 16 5.3 Selecting BusinessWorks Files .......................................................................... 17 5.4 GH Tester Project Settings............................................................................... 18 5.5 GH Tester Environment Variables ..................................................................... 19 5.6 Confirming the details and viewing the project ................................................... 20
6 Troubleshooting..............................................................................................................21 6.1 No formatter available in publisher or subscriber ................................................ 21 6.2 Unable to connect to daemon........................................................................... 21 6.3 Overlapping subjects error............................................................................... 21 6.4 Why aren't my class definitions visible............................................................... 21 6.5 Why can’t my AE transport use BusinessWorks 5 projects.................................... 21
2006 Green Hat Consulting Ltd 23/06/2006 3
1 Introduction
1.1 Purpose This guide describes how to configure and run GH Tester 3.2 with the TIBCO plugin. This provides
support for TIBCO Rendezvous and TIBCO Active Enterprise messaging formats. The guide also
shows you how to create a GH Tester project from a BusinessWorks 5 project.
1.2 Intended Audience This document intended to be read by those with a fair understanding and exposure to the concepts
involved in both testing and development and in enterprise integration.
1.3 Scope This document is concerned only with the Green Hat Software’s tool GH Tester 3.2, its configuration
and use alongside TIBCO technologies. If you wish to familiarise yourself with these technologies
please refer to documents provided by the relevant companies or individuals.
1.4 Typographical Conventions The following typographical conventions are observed throughout this document:
Type Usage
Constant Width Program output, listings of code examples, file names,
commands, options, configuration file parameters, and literal
programming elements in running text.
Italic Document title names in statements that refer you to other
documents. Also used to highlight concepts when first
introduced.
Bold 9pt Menu items in graphical user interface windows (such as
Microsoft Windows-based or UNIX X Window applications)
from which you select options or execute macros and
functions.
Submenus and options of a menu item are indicated with a
long dash; such as Menu -> Submenu or Menu -> Option.
1.5 Related Documentation The following table lists a number of documents that you should consult in addition to this manual.
Document Title/Description Version No./Date
GH Tester User Guide 3.2
GH Tester Release Notes 3.2
2006 Green Hat Consulting Ltd 23/06/2006 4
1.6 Terms and Definitions The table below lists all terms used in this document, and provides a description of each.
Term Description
Field A bit of data constituent to a message. Most fields are scalar
and therefore unitary, equivalent to data attributes. Vector
fields are an aggregation of fields both scalar and vector, and
are usually referred to as Messages. See also Message.
Message A unit of information made up of a header consisting of meta-
information and a body consisting of the message data.
Host The computer on which a software process runs.
Publisher-Subscriber A messaging paradigm whereby a messaging network consists
of Publishers and Subscribers.
Transport Informally, the messaging software in use. For instance, TIBCO
Rendezvous, TIBCO ActiveEnterprise, IBM MQ (JMS).
Publishing Making a message (data) available on a message channel.
Subscribing Receiving a stream of messages (data) on a given message
channel.
Subject A user-meaningful name for identifying messages on TIBCO
transports. E.g., the subject EQ.IBM might identify all pricing
data about IBM stocks, while EQ.IBM.N might identify price
data from the New York Stock Exchange only. See also: JMS
queue, JMS topic.
Server A host computer on a network shared by more than one user.
Subject
A user-meaningful name for identifying data objects. For
example, the subject EQ.IBM might identify all pricing data
about IBM stocks, while EQ.IBM.N might identify price data
from the New York Stock Exchange only.
TIBCO Rendezvous A software toolkit for creating distributed applications that can
inter-operate with TIBCO servers and applications on a TIBCO
network. The product includes a communications daemon and
APIs that define protocols for publish/subscribe and
request/reply data distribution and exchange. It uses the
subject-based addressing™ messaging technique for data
delivery, and defines rules for supported subject naming
formats.
TIBCO AE Message A TIBCO proprietary format for messages contained within the
Rendezvous
2006 Green Hat Consulting Ltd 23/06/2006 5
2 Installation
2.1 Prerequisites The software has been developed and tested on the Windows 2000 and Windows XP platforms but
should work on any platform that supports Java. It is dependent upon the following software:
• JRE 1.4.x.
• Installation of this is beyond the scope of this document. Please see Sun Microsystems’ Java
web site at http://java.sun.com/ for details. Note that UNIX based systems may need
additional patches loaded to support the newer Java releases, again please refer to the Sun
documentation. If you are installing a version of GH Tester that contains a java virtual
machine then an appropriate JRE will be automatically installed within the product install
directory and used when the program is executed.
• The JAVA_HOME environment variable is set to the path of the installed JRE.
2.1.1 TIBCO Rendezvous Messaging
To use TIBCO Rendezvous messaging, Rendezvous version 6 or later must be installed.
2.1.2 TIBCO Active Enterprise Messaging
To use TIBCO Active Enterpirse messaging, one or more of the following product sets should be
installed and configured:
• TIBCO/Integration Manager 4.0 or greater.
• TIBCO/BusinessWorks 5.0 or greater.
• TIBCO/TRA 5.X
2006 Green Hat Consulting Ltd 23/06/2006 6
3 TIBCO Rendezvous Transport
3.1 Product compatibility GH Tester has been developed and tested using the following versions of TIBCO Software's
Rendezvous product:
• 6.9 or greater
3.2 Libraries
3.2.1 Windows 2000 & XP
If using TIBCO/Rendezvous v6 or v7 the following files should be made available to GH Tester by
using the Library Manager application:
JAR file Usual location
tibrvj.jar C:\Tibco\TIBRV\lib
If using TIBCO/Rendezvous v6 or v7 the following entries should be made available to GH Tester by
using the Library Manager application:
JAR file Usual location
tibrvj.jar C:\Tibco\TIBRV\lib
2006 Green Hat Consulting Ltd 23/06/2006 7
3.3 Transport Configuration The Rendezvous transport provides support for plain RV, Certified, and Distributed Queue
connections to the daemon process.
3.3.1 Reliable RV
Plain RV transports only require the connection parameters to the daemon.
• Service The service name, number or default entry that the daemon should listen on.
• Network Specifies the network interface that the daemon should connect on.
• Daemon Tells GH Tester how to connect to the Rendezvous daemon.
3.3.2 Certified Messaging
To send and receive messages using the certified delivery features of Rendezvous, GH Tester utilises
a CM transport, this adds additional information to the normal transport such as the CM name and a
ledger file for persisting the tracking details.
The CM transport settings are used in addition to the standard RV Service, Network and Daemon
which are described above.
• Name The correspondence name used to identify this RVCM transport to
other RVCM transports (Note, this parameter is mandatory)
• Relay Agent Specifies a Relay Agent that is used for certified delivery when
persistent correspondence is only connecting to the network
intermittently.
2006 Green Hat Consulting Ltd 23/06/2006 8
• Ledger File Specifies the location of the file where all the correspondence between
RVCM transports are stored.
• Synchronise Ledger Checking this box will make any operations in the transport daemon
that update the ledger file block until all the data has been written to
the file. Otherwise all changes are written asynchronously
• Require Old Messages Checking this box will save all messages sent to the ledger file so that in
the event of a network failure an RVCM transport can look at the ledger
file when reconnected and continue where it left off.
Further details on these parameters can be found in the appropriate vendor administration guide.
3.3.3 Distributed Queues
To configure a transport to become a member of an RVCM distributed queue additional parameters
need to be provided. The standard Rendezvous ones are again required and are described above.
• Queue Name The unique identifier of the queue this transport is associated with
(Mandatory parameter)
• Worker Weight In a queue, tasks get assigned to workers with the greatest worker
weight and this is where that value is set.
• Worker Tasks Specifies the maximum amount of tasks this transport can carry out
before delegating to other workers.
• Scheduler Weight If a new scheduler is required then potential schedulers with the
greatest Scheduler Weight value will be assigned next.
• Scheduler Heartbeat The delay period between the broadcast of heartbeat signals.
• Scheduler Activation Specifies the time that an inactive member waits before becoming active
when a heartbeat signal is lost.
Important Note: When using a DQ based transport within GH Tester, any publish operations will be
performed on the underlying Plain RV transport.
2006 Green Hat Consulting Ltd 23/06/2006 9
4 TIBCO Active Enterprise Transport
4.1 Product compatibility GH Tester has been developed and tested using the following versions of TIBCO Software's Active
Enterprise product suites:
• TIBCO MessageBroker
• TIBCO Integration Manager 4.0 or greater
• TIBCO Business Works 5.1 or greater
4.2 Libraries
4.2.1 Windows 2000 & XP
If using TIBCO/MessageBroker the following files should be made available to GH Tester by using
the Library Manager application:
JAR file Usual location
xmlsdk.jar c:\TIBCO\MessageBroker\java
maverick4.jar c:\TIBCO\MessageBroker\java
TibRepoClient4.jar c:\TIBCO\MessageBroker\java
TibRepoToolkit4.jar c:\TIBCO\MessageBroker\java
If using TIBCO/IntegrationManager 4.0 / 4.1 the following files should be made available to GH
Tester by using the Library Manager application:
JAR file Usual location
xmlsdk.jar c:\TIBCO\IM\java
maverick4.jar c:\TIBCO\IM\java
TibRepoClient4.jar c:\TIBCO\IM\java
TibRepoToolkit4.jar c:\TIBCO\IM\java
If using TIBCO/IntegrationManager 4.5 the following files should be made available to GH Tester by
using the Library Manager application:
JAR file Usual location
xmlsdk.jar c:\TIBCO\IM450\java
maverick4.jar c:\TIBCO\IM450\java
TibRepoClient4.jar c:\TIBCO\IM450\java
TibRepoToolkit4.jar c:\TIBCO\IM450\java
2006 Green Hat Consulting Ltd 23/06/2006 10
If using TIBCO/IntegrationManager 5.0 the following files should be made available to GH Tester by
using the Library Manager application:
JAR file Usual location
xmlsdk.jar c:\TIBCO\IM\5.0\java
TIBCOrt.jar c:\TIBCO\IM\5.0\java
If using TIBCO/BusinessWorks v5 the following files should be made available to GH Tester by
using the Library Manager application:
JAR file Usual location
TIBCOrt.jar c:\TIBCO\tra\5.1\lib
TIBCOxml.jar c:\TIBCO\tra\5.1\lib
TIBCrypt.jar c:\TIBCO\tra\5.1\lib
entbase.jar c:\TIBCO\tpcl\5.1\lib\entrust
If using TIBCO/Repository and TIBCO/AdapterSDK the following files should be made available to
GH Tester by using the Library Manager application:
JAR file Usual location
xmlsdk.jar c:\TIBCO\Repository\jars
TIBRepoClient4.jar c:\TIBCO\Repository\jars
TIBRepoToolkit4.jar c:\TIBCO\Repository\jars
Maverick4.jar c:\TIBCO\Adapter\SDK\java
4.3 Transport Configuration Active Enterprise transports employ the same settings and types of Rendezvous transports as non-
AE ones, but with the addition of specifying a TIBCO project to connect to. This project file (or
network repository) contains all of the metadata descriptions for the message structures that are to
be sent and received by the underlying transport.
Details of the transport settings for Rendezvous are provided above in chapter 3.3, whilst the project
details and the account under which GH Tester should connect to the repository are shown in the
following sections.
The URL detailing the repository to connect to can be constructed by using the select button to find a
local or remote repository instance, or BusinessWorks project.
2006 Green Hat Consulting Ltd 23/06/2006 11
4.3.1 Project Directory
To connect to a Business Works file based
project select the project using the ‘Project
Directory’ option and navigate to the desired
project.
4.3.2 Local Repository
To connect to a local file-based repository type the path in the text area shown. Alternatively click
the Browse… button and navigate to the desired repository in the file system.
Note: multi-file projects will need to be
exported to a single project file in order for
GH Tester to access them, details on how to
do this are provided in section 4.4.
4.3.3 Server Repository
To connect to a server-based repository, select a Domain and Project Name from the available
choices under the Server-Repository tab.
The values available within the two combo
boxes will be obtained by subscribing to
information broadcast by the TIBCO Repository
server processes on your network.
If the settings for these are different from the
defaults provided by TIBCO then they can be
edited by clicking on the Advanced... button.
2006 Green Hat Consulting Ltd 23/06/2006 12
Within the Advanced Tab you can
change the Rendezvous Service,
Network and Daemon settings along
with the subject that should be
subscribed to in order to discover what
remote repositories are available.
When the OK button is pressed, GH
Tester will repopulate the Domain and
Project boxes with the newly
discovered items.
For a complete description of all the parameters, please refer to the TIBCO documentation.
On first use of the transport GH Tester will connect to the repository and process all of the necessary
metadata. If the repository is invalid you will be alerted via an error dialog box. If this occurs please
note the error message and consult the TIBCO documentation.
When GH Tester makes a successful connection to a repository, the data is cached locally. On
subsequent executions of the application, the cached copy of the repository metadata will be
accessed. In order to obtain to the most recent version of the repository, use the Refresh operation
located on the context menu within the project browser. This will connect to the originally specified
location of the repository and update the locally cached copy with the latest metadata.
Note: It is necessary to run GH Tester with TIBCO AE version 5 JAR files if you wish to connect to a
BusinessWorks 5 project.
4.4 TIBCO Multi-file projects More recent versions of TIBCO Software's
Integration manager and Business Works products
provide the ability to store their projects as multiple
files. These projects can be used by GH Tester in
one of two ways, they can be exported as a single
file that can then be selected using the methods
described above or they can be used directly from
the Business Works project location.
To create a single file representation of the project,
within TIBCO Designer open the project that you
are interested in using from GH Tester and select
the Export Full Project... option from the Project
menu.
This will then provide you with a dialog that will
allow you to export the content to either a local file
or a remote repository (both of which can be
subsequently accessed by GH Tester).
2006 Green Hat Consulting Ltd 23/06/2006 13
Choose an appropriate name
and location for the file that
you wish to create and then
click on OK.
Finally you will need to
confirm the file type and
encoding, select the default
values and again click on OK
to complete the process.
You are now ready to use this
project from within GH Tester.
4.5 Using Schema elements All of the standard schema based message editing facilities are described in the GH Tester Reference
Guide, however Active Enterprise messages also provide support for Union, Sequence and Any
types.
4.5.1 Sequence types
If a class contains a member that is a
sequence type then its contents are
manipulated using the Add Child context
menu option. This will add a new object
of the chosen type inside of the AE object.
This can be repeated for as many
members as you wish to be sent or
validated against.
4.5.2 Any types
For members that are of type Any you can
change the type of the value to be sent
using the Select Type context menu. This
will provide you with a list of all of the
types defined in the repository.
2006 Green Hat Consulting Ltd 23/06/2006 14
If you wish to change the type then the operation can be repeated to select the new type.
4.5.3 Union Types
To use Union types a combination of the above two methods can be employed to manage the
content. For creation you will need to use the Add Child operation that will select an initial value to
be populated within the union. Subsequently, if you wish to change the content of the field to one of
the other types that are supported within the union then the Select Type operation should be used.
When using the Select Type
operation only the objects present
under the Union submenu should
be chosen. Selections from the
other submenus will result in an
invalid object being selected and
the class being marked as invalid (as denoted by the red crosses in the message editor).
4.5.4 Setting the Container’s Value Action
When a sequence, union or class is selected within a Publisher, it is possible to set the type of the
value action to Process Children, Process Tag or Null. The Process Children action is the default action
and when selected, all of the children of that container will also be published. If that container has no
children, for example if a sequence is empty, then that container will still be sent but it will be empty.
The same concept applies to the Process Tag action except that the children of that container will be
populated entirely from the content of the selected tag. If the Null action is selected then this
indicates that the container itself will not be sent.
When carrying out rigorous testing, it is advised that several different Test Sequences be created that
use both the Process Children action and the Null action across the selected containers (especially
when using Sequences and Unions). This will allow for both of the cases, where the Containers are
sent but with zero or more children and where the Containers are not sent at all, to be fully explored.
2006 Green Hat Consulting Ltd 23/06/2006 15
5 Creating GH Tester Projects from BusinessWorks
It is possible to create a GH Tester project directly from an existing BusinessWorks 5 project using a
step-by-step wizard. Various objects will be created within GH Tester from the BusinessWorks
project such as transports, global variables and messages. Tests will be created that will enable you
to exercise BusinessWorks processes. For example, if a process works by receiving a message and
sending a reply, the equivalent GH Tester test would send the request and receive the reply.
There is an additional option on the initial screen as
shown. Double-click the “Create A Project From
BusinessWorks” entry, or select and click “OK” to
start a guided wizard process.
5.1 The BusinessWorks Wizard
To create the GH Tester project from your existing BusinessWorks project we’ve provided a wizard
to enter the necessary details about your BusinessWorks project and where you’d like to create your
new GH Tester project.
The first screen provides a short
summary of the steps involved so
that you can ensure that you have
all the details to hand.
2006 Green Hat Consulting Ltd 23/06/2006 16
From the summary screen you can see that the wizard has five steps. The first two steps are related
to choosing your BusinessWorks project and selecting candidate files within that project. The final
steps are for defining your settings for your new GH Tester project.
Once you have prepared the information that you might need for this wizard, press the “Next”
button to continue.
5.2 Choose your BusinessWorks project
Now that you’ve started the wizard, we need to start gathering information about the
BusinessWorks project that you want to integrate with GH Tester.
You are able to define the settings for the project at the bottom of the screen. Currently only the URL
entry is used; the pointer to the directory containing your file-system based project.
To point at a project, press the “Select…” button and this will popup the dialog which will allow you
to manually enter a project directory or select one directly from the file-system.
Once you are happy that you have selected the correct BusinessWorks project directory then press
the “Next” button.
2006 Green Hat Consulting Ltd 23/06/2006 17
5.3 Selecting BusinessWorks Files
Now that the BusinessWorks project is selected, you need to indicate which files you want to
integrate with the GH Tester project.
The wizard will read in your BusinessWorks project and then group the files in that project into
suitable categories. The tick next to each of the files indicates that the file will be included when
integrating into GH Tester. By default all the files that were found will be ticked for inclusion.
The mapping of objects from BusinessWorks to GH Tester is described as below:
BusinessWorks Project Item GH Tester Resource Example File
Name
How
Many?
a.rvtransport Rendezvous Transport a.a3t 1
b.sharedjdbc Database Connection b.dbp 1
c.httpconnection HTTP Transport c.a3t 1
e.wsdl WSDL e.wsdl 1
f.process AE Transport f.a3t >=0
Message f.ghm >=0
Test Sequence f.tsq >=0
/folder/.defaultVars Environment - -
2006 Green Hat Consulting Ltd 23/06/2006 18
Once you have selected all the files that you wish to include from the BusinessWorks project, then
press the “Next” button to start defining your GH Tester project settings.
5.4 GH Tester Project Settings We need to specify where on disk to create the new project – the Project Directory Enter the project
name and optional owner and comments for project that you are creating. The Configuration
Management setting is used to set source code control system options (in a future release).
Once you have specified where you want to create the project, press the “Next” button to continue
with the wizard.
2006 Green Hat Consulting Ltd 23/06/2006 19
5.5 GH Tester Environment Variables It is possible to convert the BusinessWorks Global Variables (also known as repository variables) to
GH Tester environment tags. Each of your variables from within your BusinessWorks project will be
persisted as an Environment tag. Objects that are created in GH Tester will be configured to use
these tags. For example a transport in BusinessWorks that uses global variables will be converted to
a transport in GH Tester using the equivalent environment tags.
It is possible to define a number of environments, such as DEVELOPMENT and LIVE, to allow for
different tag settings. You can create and remove Environments using the “Add” and “Remove”
buttons. This screen will also allow you to define new variables and remove any variables that you
are not interested in bringing into your GH Tester project. New variables are automatically added to
each of the environments. You can also directly edit the variable name and value by double-clicking
the entries as shown.
2006 Green Hat Consulting Ltd 23/06/2006 20
Once you’ve defined a suitable amount of Environments and confirmed that the variables are valid
then press the “Next” button to continue to the final step of this wizard.
5.6 Confirming the details and viewing the project Now that you’re in the final step, that’s it for entering anymore details. All you need to do know is
confirm that the details are correct and press the “Finish” button.
When you press the “Finish” button GH Tester will generate your new GH Tester project. Once
finished, the project will be automatically launched in GH Tester.
2006 Green Hat Consulting Ltd 23/06/2006 21
6 Troubleshooting
6.1 No formatter available in publisher or subscriber If, when using a publisher or subscriber editor, the formatter combo box is blank then it is likely that
the requisite jar files haven't been included on the classpath when starting the application. Note that
the Library Manager must be configured for the TIBCO AE provider, and the Enable provider
checkbox must be set to on.
6.2 Unable to connect to daemon This can occur when either the application is unable to start a suitable local daemon process or if the
deamon settings in the transport configuration are invalid/reference an unreachable remote
transport. In these cases check that the directory in which the rvd executable is present is located on the system PATH environment variable.
6.3 Overlapping subjects error When using an RVCM-based transport there restrictions to the subjects to which you can subscribe
to at any given point. For example it is not possible to have two tests using the same RVCM
transport with subscriptions to the subjects 'test.>' and 'test.application'. This would result in an
error as you could potentially have two subscribers to the same subject and Rendezvous would not
know how to handle the certified acknowledgements.
6.4 Why aren't my class definitions visible
Changes made to the schema definitions inside of TIBCO/Designer will not be visible in GH Tester
until you refresh the transport to update the cached copy of the meta-data. This can be done from
the context menu within the Project Explorer.
6.5 Why can’t my AE transport use BusinessWorks 5 projects
BusinessWorks 5 uses TIBCO AE version 5 libraries. You must run GH Tester with AE5 JAR files
(AE4 will not work.) Please run up the Library Manager and confirm the AE settings.