2014-01-20 259 views
4

我正在设计一个企业级别的Web应用程序,它将有一个数据层+ SQL数据库,一个WCF REST Web服务层与数据层进行通信,然后是一个将与WCF通信的MVC网站REST Web服务。我想在设计的每个级别都进行自动单元测试。单元测试WCF服务

我已经创建了一个数据层单元测试项目,测试EF模型,存储库,操作等,并且有大约15个测试,我可以点击按钮并运行到目前为止,测试数据层提供的所有功能。

我想在WCF服务层有相同的,但我不知道如何有自动测试项目运行对WCF服务。我见过有关使用WCF测试客户端在后台加载服务的文章,并能够向每个服务方法输入参数并查看结果,但我不希望手动过程,我希望它自动化,以模拟数据层并单独测试服务调用。理想情况下,我想测试RESTful方面,因此能够模拟GET/POST/PUT/DELETE等,也可以用错误的方法调用某些方法,并确认它按预期方式失败等等。 。

有没有一个很好的解决方案,自动做到这一点,或者我接近这个错误?

+0

可能的[WCF单元测试]重复(http://stackoverflow.com/questions/152338/wcf-unit-test) – Gaui

回答

2

您确定可以创建可以自动运行以测试WCF服务的测试。

看到那么这里的讨论:WCF Unit Test

但是你要问您的测试策略/测试用例设计一个问题是,REST端点测试的howmuch需要进行单元测试,需要多少成为其中的一部分系统/集成测试。因为wcf端点(包括REST)将允许您将系统视为黑盒子,并且不需要对内部类型有任何深入的了解就可以进行系统测试。

-1

您可以将服务的地址更改为localhost。 这样你就可以启动服务并测试它没有嘲弄

+0

这是一个坏主意,因为服务(本地或远程)可以做一些更改远程数据库或连接到其他服务/ ESB等。 – Vladislav