欢迎访问测试中国(www.testingcn.com),做测试的朋友请加QQ群:45598719
如何使用VS2005的WebTest对webservice进行数据源绑定测试
上一篇 /
下一篇 2007-05-25 11:37:57
/ 个人分类:测试精华
VS2005中的WebTest工具主对是针对于HTTP协议来做的,所以他不仅能测ASP.net的应用,还可以测任何基于http协议的应用,比如JSP、PHP等等。
WebTest在做数据源绑定时,只能很好地分拆Http的Get、Post请求数据包,这对测试webSite已经够了。但如果测web
Service就相对不够用,因为WebTest不能分拆Soap包,没有对Soap包内数据进行绑定操作的界面,这一功能需要手工完成。下面就是一个使用VS2005
WebTest工具对webservice进行数据源绑定测试的例子。
1. 先准备一个WebService,并部署到IIS上。
这里有一个简单的WebService:
[WebMethod]
public int Add(int i,int j)
{
return i + j;
}
服务调用说明如下:
2. 准备测试数据
在数据库中准备了一个Test表,存放一些测试数据。
3. 新建Web测试
a) 新建测试项目
b) 新建Web测试
c) 当出现IE录制界面进,按Stop停止录制。
d) 在webtest1里添加Web service request
e) 在web service request里添加Header,其Name=SOAPActioin, Value=”http://tempuri.org/Add”,也就是服务协议里SOAPActioin的值。
f) 在web测试中添加数据源,指向test表。
g) 在http://localhost:8001/webservice/service.asmx?op=Add中注意SOAP请求中下列数据:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Add xmlns="http://tempuri.org/">
<i>int</i>
<j>int</j>
</Add>
</soap:Body>
将其中的i和j的值改为:{{数据源名.表名.列名}},如下所示:
<i>{{MyComics1.tset.i}}</i>
<j>{{MyComics1.tset.j}}</j>
h) 将上面的信息加到Webservice request的stringbody中,如下图所示:
i) 将Web测试的URL改为所测的URL,如下图所示:
到此,测试设置完成。
4. 运行测试
a) 直接运行测试,结果正常。
b) 修改测试,让数据源中的每一条记录都做一次测试。
c) 结果如下图所示,每条数据都执过。
收藏
举报
TAG:
测试精华