ESB Toolkit Tip #4: Use the Itinerary Test Client and the out of the box On-Ramps to test your Itinerary

How to create an itinerary is well documented but what is the best way to test your itinerary? In a production environment you normally have an On-Ramp that gets the itinerary from the Itinerary Store database so you first have to create a Receive Port with a Receive Location and you also have to configure the Pipeline with the Itinerary name or Business Rule Policy. It’s no rocket science but if you just want to test the itinerary you don’t want to do all those steps. Luckily you don’t have to because the ESB Toolkit comes with four types of Web-Based Itinerary On-Ramps. These On-Ramps were created at the installation of the ESB Toolkit and are designed to receive any XML message. Note that these On-Ramps are ideal for testing but are less suited for a production environment because the message is described with an anyType Type in the WSDL and most of the clients require a typed message.

Web-Based Itinerary On-Ramps in ESB Toolkit:

•    One-way ASMX
•    One-way WCF
•    Request/Response ASMX
•    Request/Response WCF

The ASMX on-ramps expect the ESB itinerary content in the SOAP header. You have two kind of WCF on-ramps. One that expects a reference to the ESB itinerary in the SOAP header and the Generic WCF on-ramp that expects only the request message. In a production environment you only want to sent the message but for testing it’s more convenient to also send the itinerary with the message because in that case you don’t have to configure the Pipeline in the Receive Location and you don’t have to deploy the itinerary to the Itinerary Store database.

The ESB Toolkit also comes with a Itinerary Test Client tool to test itineraries. It’s provided as a sample so to use it you first have to uncompress the file from the installation folder into the C:\Projects\Microsoft.Practices.ESB folder. In “..\Source\Samples\Itinerary\Source\ESB.Itinerary.Test” is the tool located.


Exporting an Itinerary as XML for Testing

Exporting the itinerary as XML enables you to test the itinerary using the Itinerary Test Client.
In the Itinerary Model properties window:

  1. Set the Model Export property to XML Itinerary Exporter
  2. Set the Itinerary XML File property to the location and name of your choice
  3. Right-click the designer surface, and then click Export Model

Export Properties










Testing an Itinerary Using the Itinerary Test Client

To test an itinerary using the Itinerary Test Client:

  1. Unselect the Web service options to select the ASMX web service.
  2. Click the Load Itinerary button to provide the itinerary that you have saved to a .XML file.
  3. Click the Load Message button to select a test message.
  4. Click the Submit Request button to submit the test message.

Itinerary Test Client

















Note that when you send a message to an On-Ramp, you get the following message box. This only means that the message is successfully sent and not that it’s successfully processed by BizTalk!

Message Sent






Have fun with testing!

Tomasso Groenendijk

About the author

Tomasso Groenendijk lives in Netherlands and is a Solution Architect at Insight. He has over 17 years’ experience in software development and software design. Tomasso is specialized in application integration with a strong interest in the Windows Azure cloud platform. From 2014, Tomasso has been awarded four times with the Microsoft Azure MVP award. He is an active contributor to the integration community through his work on his blog, MSDN samples, TechNet Wiki and also speaking on events.

MVP profile Tomasso Groenendijk
Sentinet Product Specialist
BizTalk360 Product Specialist

Month List