BizTalk is notoriously hard to test. But I just came a cross a couple of interesting solutions to do unit testing for biztalk related logic and orchestration.
- BizMock :
“BizMock is a framework for testing BizTalk solutions, using a Domain Driven Design (DDD) approach and fluent interface API. It has mocking capabilities, so no need to rely on dependent infraestructure like web services or DBs. The tests are writen and executed from within VS using regular Visual Studio Tests and C# code, allowing a TDD and agile development style of BizTalk solutions.”
- Bizmonade: (I really don’t like the name)
“Bizmonade is a new project being developed to enable unit testing of BizTalk orchestrations, in isolation of other components, without deploying the orchestrations to BizTalk and without doing any configuration (bindings).
It allows running orchestrations directly from unit tests written in C#, using NUnit, MSTest or any another .Net testing tool. The orchestrations therefore run in complete isolation from the whole BizTalk environment, reducing the time needed to do quick tests of new orchestrations or of modifications to existing ones.”
the API for BizMonade looks really interesting, but since I’m no Biztalk Guru, I don’t know if it satisfies what you’d want to test in a biztalk solution.
With BizMock, the fact that one would need a “DeploymentItem” on the tests might mean that it’s an integration style test framework that’s just easier to get up and running, but not a “pure” unit testing solution. However, I’m not sure since I have not used it.
Do you use these? or other solutions?
Update: there’s also BizUnit , but god help me if I ever recommend people to use XML for making tests. DON’T USE XML.
Please.