使用ReSharper和WCF运行MSTest测试的问题

时间:2011-06-22 19:22:51

标签: wcf visual-studio-2010 unit-testing resharper mstest

在尝试使用ReSharper的测试运行程序在调用WCF服务时运行我的MSTest单元测试时,我遇到了一个奇怪的错误:

  

测试方法MyProject.UnitTests.InvalidZipTest抛出异常:   System.ServiceModel.CommunicationException:序列化消息体时出错:'生成XML文档时出错。'。有关更多详细信息,请参阅InnerException。

     

---> System.InvalidOperationException:生成XML文档时出错。

     

---> System.InvalidCastException:[A] MyService.ZipSearch.Request无法强制转换为[B] MyService.ZipSearch.Request。类型A源自位于'C:\ Development \ MyProject.UnitTests \ bin \ Debug \ MyProject.UnitTests.dll'的上下文'LoadNeither'中的'MyProject,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'。类型B源自'MyProject,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'在上下文'Default'位置'C:\ Users \ jrose \ AppData \ Local \ Temp \ twt3nlrb.kfo \ MyProject.UnitTests \组件\ DL3 \ 2eb85aa1 \ 83973aea_0031cc01 \ MyProject.DLL”。

当通过MSTest的测试运行器运行测试时,测试运行正常而不会抛出此异常。

当通过不涉及此WCF调用的ReSharper测试运行器运行测试时,测试运行正常。

同事也会遇到同样的问题。

我正在运行ReSharper 5.1.1766.4和Visual Studio 2010 v.10.0.40219.1 SP1Rel。

我相信这是我能想到的所有相关信息,但如果还有其他任何我没想到的可能会有所帮助,请告诉我。

提前致谢。

1 个答案:

答案 0 :(得分:1)

看起来测试项目和服务之间的dll版本之间存在一些问题。

您的测试如何参考该服务?是通过直接引用dll和amp;配置还是通过添加服务参考?

首先,在resharper的选项中尝试在运行测试时启用/禁用卷影副本(我认为禁用)