快捷搜索:

BizTalk开发系列(四) 深入Map测试

在BizTalk的开拓历程中XML消息间的映射是一个很紧张的内容。假如只是一样平常的从源节点的值复制到目标节点的话,BizTalk项目供给的MAP测试和验证就已经可以满意需求了。然则很多时刻必要在映射的历程中进行繁杂的处置惩罚。比如节点值的组合运算等。幸好Visual Studio供给了对XSLT的测试功能。在BizTalk的开拓历程中可以借助此功能做到Map的"单步"调试。下面我们分手看一下Map的简单测试与高档测试。

简单Mapping测试

验证Map

右击选择Validate可以在“输出”窗口,查看到关于Map的验证信息。

测试Map

右击Test map,Visual Studio会自动天生Map 的源消息,在输出窗口查看到关于Map的测试信息。

假如要用自定义的消息做测试实例的话。可以右击选择属性,在属性窗口的TestMap Input Instalce 和 TestMap Output Instance分手输入响应文件的路径。

高档Mapping测试

在实际的开拓历程中,常常必要对Map做一些自定义的开拓。为此BizTalk 的Map编辑器供给了Script Functoid,支持C#.NET, JScript.NET, Visual Basic.NET, 可扩展样式表说话转换 (XSLT), XSLT 调用模板。假如应用“简单测试”的话,调试这些脚本就会很麻烦。由于无意偶尔我们必要知道输入参数和输出参数的值,脚本的履行环境等信息。以赞助我们改进脚本。

假如您有做过验证Map的时刻,您会发明在输出窗口会提示天生了响应的XSLT文件(注:XSLT是一种转换说话)。 Visual Stuido可以支持XLST的调试。我们就下面Sample,讲一下若何应用Map天生的XSLT文件去测试Map.(留意:对XSLT文件的改动不会利用到响应的Map文件中)

如下图所示,我们在Map中应用自定义脚本:内联XSLT和C#。

内联XSLT的脚本代码

内联C#的脚本代码

public string MyConcat(string param)

{

return param.Trim();

}

1.右击Map文件,点击“验证”

2.在输出窗口中按住Ctrl, 点击后缀为 XSL的文件。

3.在打开的文件上右击"查看源码"

4.此时我们可以发明在XSL编辑器的左边可以设置断点,并且菜单上多了一个"XML"菜单。

5.在属性中设置好XSLT的输入和输出文件

6.点击"调试XSLT" 就可以单步调试XSLT,在右边的输出文件窗口还可以实时的看到轮换的效果。

7.在监视栏可以输出变量的信息,运行到Template的时刻还可以直接输入Xpath查询语句验证输出。同时鼠标移到拔取字段的时刻还可以看到当前变量或语句的值。

XSLT中的脚本支持是微软对XSLT说话进行了扩展增添了元素,所有自定义脚本天生的时刻都邑在此节点,如下面的代码。

有了以上的测试措施我们就可以很方便的找到Map中的Bug,然则对付外部法度榜样集的测试的时刻,只能经由过程"简单测试"的Test Map措施进行, 由于Map将对法度榜样集、类和措施的引用放置在与天生的样式表相关联的扩展工具文件中,并在运行时才对其进行调用。是以您可以编写自定义内联Functoid以方便测试。当然开拓就麻烦点。

您可能还会对下面的文章感兴趣: