2

使用 BizTalk,我喜欢使用可调用的编排(没有管道)作为其他编排的服务,从而在架构中提供更大的灵活性。但是对它们进行单元测试是相当狡猾的。现在,我使用带有包装编排(只是调用编排进行测试)的单独应用程序,我在单元测试之前将其部署到 BizTalk。

有人有更好的方法来对可调用的编排进行单元测试吗?最可取的是,我会有一个单元测试,我不需要任何额外的工件来部署。

提前致谢。

4

1 回答 1

0

很难用NO回答一个开放性问题,但我的回答是这实际上是不可能的。

编排确实与 BizTalk 编排引擎紧密耦合。如果要对编排进行单元测试,则需要模拟该编排引擎。这不是一件容易的工作。您必须考虑很多细节,例如脱水、序列化、作用域、与您的编排之间的消息传递实际上是如何工作的,等等。

我会说你正在采取正确的步骤,分离出部分编排,而不是让它们直接绑定在物理端口上。这使得测试成为可能/更容易。更少的连接也意味着更少的错误点。

我会尝试限制您所做的编排工作量。只有在没有更好(或至少更可测试)的替代方案时才使用编排。

如果您可以通过简单的部署、删除消息并查看结果来快速且不费力地测试您的编排,那么您已经比一整套 BizTalk 开发人员进行了更多的测试。如果你让这个过程变得简单,并尽可能地自动化(部署、删除文件、检查预期输出),那么你至少可以更容易地检测回归。

目标是使测试变得如此简单/便宜且如此可靠,测试比不测试更容易。这样你就可以防止经理说skip the tests, they take too long. 你会希望他们问:can you test it first?

于 2015-09-21T16:16:54.327 回答