WebService 的UnitTest以及调试

对于有些特殊的项目,需要验证WebService提供的方法是否正确,比如通过Session传递数据的WebService。

看到这儿先声明一下是一些特殊的项目对WebService的特殊用途。

主要内容如下:

1、写一个WebSerivce

2、写一个WebService的单元测试

3、调试单元测试

 

先看一个简单的WebService:

 

Default web service

 

注意,这个WebService是可以供JavaScript调用的(也是一个特殊的WebService吧,呵呵!)

我们针对HelloMethod方法进行UnitTest

 

Default web service test

 

注意两几:

1、调用WebSite的webservice使用DefaultWebService_Accessor,调用Webapplication则使用DefaultWebService,VS创建单元测试时会自动生成。

2、TestMethod的UrlToTest属性,可以是IIS的地址也可以是VS自带的ASP.NET的浏览工具的地址,带端口号的。但是要设置成端口号被运行一次改变一次

3、AspNetDevelopmentServerHost属性中的项目地址是可以用%SystemRootPath%

4、Session之类的在标识[ClassInitialize()]属性的方法中初始化,方法接受一个TestContext的参数

 

接下来是调试单元测试:

1、使用VS自带的ASP.NET程序的浏览器,在 UrlToTest属性中配置

2、运行单元测试让它显示在TestResult窗口中

3、调试->附加到进程 附加到WebDev.WebServer.EXE进程中

4、在TestResult窗口中选择调试即可。

 

调试之前最好先备份Web.config文件。在调试过程中不小心按了VS主菜单的停止调试,VS会修改Web.config然后下一次就都无法运行单元测试了。这个时候只需要还原Web.config即可。

 

 

 

posted @ 2009-04-04 13:40 消失的风 阅读(...) 评论(...) 编辑 收藏