单元测试BizTalk管道与依赖于上下文属性

时间:2013-07-17 09:46:32

标签: unit-testing biztalk biztalk-2010

我正在尝试使用TestableReceivePipeline为BizTalk管道构建单元测试。我已按照此处描述的步骤操作: Using the Unit Testing Feature with Pipelines

我尝试测试的管道有一个管道组件,它读取ReceivedFileName上下文属性。

由于消息在测试中没有通过FILE适配器,因此context属性不存在,测试失败。

有没有办法在测试中注入上下文属性,即在单元测试中设置ReceivedFileName属性?

1 个答案:

答案 0 :(得分:0)

在自定义管道中编写以下代码:

// This will be the name of file.
string filename = "NameOfFile";

// myMsg is the IBaseMessage which will be the output.
myMsg.Context.Write("ReceivedFileName", "http://schemas.microsoft.com/BizTalk/2003/file-properties", filename);
myMsg.Context.Promote("ReceivedFileName", "http://schemas.microsoft.com/BizTalk/2003/file-properties", filename);

现在,您可以按照常规步骤进行“ReceivedFileName”升级。