Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wcf 是否可以在不运行实际服务的情况下对服务契约进行单元测试?_Wcf_Unit Testing_Testing_Service_Servicecontract - Fatal编程技术网

Wcf 是否可以在不运行实际服务的情况下对服务契约进行单元测试?

Wcf 是否可以在不运行实际服务的情况下对服务契约进行单元测试?,wcf,unit-testing,testing,service,servicecontract,Wcf,Unit Testing,Testing,Service,Servicecontract,我在一个使用WCF服务(实际上是一个服务客户机解决方案)的应用程序上工作 出现的问题是,当我们进行一些重构时,结果发现一些服务契约变得无效。直到服务和应用程序运行时,才会显示此信息 现在,我想编写测试用例,简单地测试服务契约,这样当它们不匹配时,测试用例就会失败。这是否可以在不运行实际服务的情况下实现 也就是说,我能告诉你如何在测试用例中模拟服务部分并同时调用客户端调用吗?我认为这是不可能的,因为如果你在网络上执行函数,可能会出现很多陷阱 例如超时、连接故障、授权问题等 在方法本身中为代码编写脱

我在一个使用WCF服务(实际上是一个服务客户机解决方案)的应用程序上工作

出现的问题是,当我们进行一些重构时,结果发现一些服务契约变得无效。直到服务和应用程序运行时,才会显示此信息

现在,我想编写测试用例,简单地测试服务契约,这样当它们不匹配时,测试用例就会失败。这是否可以在不运行实际服务的情况下实现


也就是说,我能告诉你如何在测试用例中模拟服务部分并同时调用客户端调用吗?

我认为这是不可能的,因为如果你在网络上执行函数,可能会出现很多陷阱

例如超时、连接故障、授权问题等


在方法本身中为代码编写脱机单元测试应该是可能的,但这只是工作的一小部分。

我在这里只是说说我的想法。Net反射能解决您的问题吗?我的意思是,检查包含要验证的服务契约的二进制文件