Skip to content
tomasr edited this page Sep 12, 2010 · 9 revisions

PipelineTesting is a library for testing BizTalk Server 2006 pipelines and custom pipeline components using your favorite unit testing framework (like NUnit), without having to go through the time-consuming process of constantly redeploying to BizTalk after every change.

What does PipelineTesting do?

  • Execute compiled BizTalk pipelines with arbitrary messages as input and get the result
  • Create a new, empty pipeline and adding arbitrary pipeline components to it for testing.
  • Full control over the pipeline context, including manual control over which schemas are available to components in the pipeline. The BizTalk Server management databases are never queried.

What can you use PipelineTesting for?

  • Test your existing pipelines with different inputs and validate the expected results
  • Unit test your custom pipeline components by themselves or in combination with other pipeline components. Great for verifying that your components play nice with BizTalk’s own assembler/disassembler components!
  • Create repeatable integration/regression tests for your own pipeline and components
  • Create tests for your Flat File schemas. PipelineTesting provides an easy way to test your schema against as many different instance documents as you need to, thus ensuring that changes to the schema don’t break any expected behavior!

Preparing to use the library

First of all, you’ll need to build the library from the downloaded source code distribution, using Visual Studio 2005. The distribution includes the unit tests for the library, which you can run to verify it is working correctly, if you want.

To use the library once you’ve built it, you’ll want your projects to reference the following three libraries:

  • Winterdom.BizTalk.PipelineTesting.dll
  • Microsoft.BizTalk.Pipeline.dll
  • Microsoft.BizTalk.Pipeline.Components.dll