我不确定你是否将你的网络服务放在一个单独的项目中,但是目前我们所有的网络服务都在我们的WAP项目中,在各种folders....to me下,这是一片混乱。
无论如何,除了单元测试,模拟等等,我创建了一个新的Web项目。出于测试的目的,我想使用另一个web项目的服务。
但我意识到,当我将一个项目引用添加到另一个web项目时,我开始收到类似第三方控件的引用错误,可能是因为这个测试web项目中的web.config没有一些相同的键。
显然,这是错误的方向。什么是利用服务的简单方法,而不需要重构我们目前物理上存储服务的方式?
发布于 2009-09-02 01:11:46
如果您的源项目是一个asp.net服务项目,您可以创建一个新的 web应用程序项目,右键单击并将web服务引用添加到您的服务项目中。
从那里开始,有许多方法可以测试服务。您可以创建一个页面,该页面将遍历所有不同的服务方法,并生成一个向您显示结果的web页面,或者创建一个允许您输入输入以测试每个服务方法的页面。
这里是MSDN页面,用于开始使用web服务,它们很可能有一些很好的教程。http://msdn.microsoft.com/en-us/library/t745kdsh.aspx
我还建议将WCF服务作为另一种服务选项http://msdn.microsoft.com/en-us/netframework/aa663324.aspx进行研究。
当然,单元测试可能是您最好的选择。在visual studio中,可以添加单元测试项目来测试web服务的类,并以此方式测试各个方法。
发布于 2009-09-02 01:12:07
不要将其添加为项目引用,而是将web服务添加为web引用,以便使用它。但是,为了让服务正常工作,必须以某种方式部署服务(即使它就在那个盒子上)。
另一种方法是使用VS2008,你可以这样测试web服务(效果很好,我有VS2K8专业版):http://msdn.microsoft.com/en-us/library/ms243399.aspx
对于较旧的版本,这里有一篇文章:http://msdn.microsoft.com/en-us/magazine/cc163830.aspx
发布于 2009-09-02 01:26:09
如果您当前的web应用程序项目正在提供服务,您可能希望将该服务代码迁移到Web服务项目。
将提供服务的代码/类提取到新项目中,并将提供服务的方法装饰为
[WebMethod()]这样,您就可以保留当前的代码库,只需重新安排项目并添加一些属性以将其公开为服务即可。
另一种方法是将web服务添加到当前web应用程序中。它可以与您的web应用程序并存,并且您可以创建web方法来公开您想要的任何服务。
您的测试项目可以使用这些服务中的任何一个,并测试各个方法。
https://stackoverflow.com/questions/1365363
复制相似问题