博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
接口测试总结
阅读量:5340 次
发布时间:2019-06-15

本文共 2107 字,大约阅读时间需要 7 分钟。

网络上接口测试资料很多,但是都是很散乱的,于是整理下资料,就有了这个blog

什么是接口测试

接口测试是测试系统组件间接口的一种测试。

接口测试可以分为哪几种

  1、系统与系统之间的调用,比如银行会提供接口供电子商务网站调用,或者说,支付宝会提供接口给淘宝调用

  2、上层服务对下层服务的调用,比如service层会调用DAO层的接口,而应用层又会调用服务层提供的接口,一般会通过

3、服务之间的调用,比如注册用户时,会先调用用户查询的服务,查看该用户是否已经注册。

测试思路

对于接口测试,首先测试人员要懂代码,你只需要知道接口的作用是什么就可以了(有文档更好,但大部分都没有);其次,自己去读开发的代码;然后,根据该接口功能及代码写测试用例。

用例设计:

1:写一个程序去调用该接口,看是否能够达到该接口所定义的功能

2:根据该接口参数,构造不同的用例,测试接口在参数合法及非法情况下能否达到预期效果

3:根据该接口中的逻辑,设计不同条件的用例,测试该接口实现代码的逻辑

4:进行容错及健壮性测试

5:静态检测代码,看是否有内存泄露、或永远走不到的分支、代码规范及逻辑是否合理。

6:对于一些接口,需要进行多线程测试

实现方法

工具来说是很多的,比如loadrunnersoapUIJemter等都是可以实现的,本文章中就直接用loadrunner实现,下面的是例子,测试的接口WSDL的链接:

http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?WSDL

接口测试协议说明

接口测试我们一般用WSDL协议的,WSDL是网络服务描述语言 ,是对Web Service的描述语言,是一种接口定义语言,用于描述Web Service的接口信息等。

测试步骤

创建脚本

LRVirtual User Generator并新建一个协议为“Web Services”的脚本如下图:

 

导入WSDL 

新建成功后进入功能和编写界面后,先点击“Manage Services”打开管理服务界面(如下图①),在弹出的“Manage Services”窗口中点击“Import”(如下图②),然后在新打开的“Import Service”的窗口中选择WSDL的导入形式(如下图③)。因根据WSDL来自不同的方式,选择对应的方式进行导入

 

而本手册以“URL”的形式进行导入,因此填入对应WSDLURL后点击“import”(WSDL为公网的各地市天气Web ServiceWSDL描述地址)。导入成功后将可以看到该WSDL提供的接口描述信息,最后点击“OK”完成WSDL导入。

 

选择发送请求的方法和内容

导入WSDL成功后,进入默认生成的Action函数中,并让光标停留在该函数中(为了便于后续测试将“Service Call的方法”添加至Action函数中,如下图①及画圈处);点击“Add Service Call”(如下图②);在打开的“New Web Service Call”窗口中,右上角呈现可调取的方法(如下图③)。

 

选取其中一个方法“getSupportCityString”,可在下图中左下角查看到这个方法中的相关参数,而我们主要使用输入参数“Input Arguments”(具体输入填写规则可见WSDL描述文档,若没有明确文档,需与对应开发人员沟通),对应填入合规的请求值“福建”后点击“OK

 

点击“OK”后界面回到了脚本编辑界面,并且LR自动把填写的请求转化为具体的脚本。我们通过“运行按钮”(下图画圈处)进行回放并查看回放日志结果

 

默认配置的回放日志如下图

 

若要查看详细日志可通过Vuser菜单下的“Run-time Settings”中General-log下的日志开启相应的日志类别,成功设置后将会在下一次回放中生效。(回放内容较多因此不在该册内贴事例图)

 

获取单个结果处理方式

在成功回放脚本后Virture User Generator工具栏点“Tree”(如下图①)将编写界面切换至树形界面,再选择对应的发送请求动作(如下图②),并切换至该动作对应的快照页签下的接收显示内容(快照是必须成功回放一次脚本后才可生成)

 

展开上图的Response信息下的“soap:Body”将呈现服务端返回给我们发出请求的对应数据

 

 

然后我们把其中的一个结果作为参数获取如下图:

 

在打开的“XML Parameter Properties”窗口中给该变量定义名称

 

点击OK后在Virture User Generator工具栏点“Script”将树形界面切换至编码界面,后可见LR对应生成的获取单个结果的代码

 

我们通过以下语句进行打印获取参数的结果以验证是否正确

lr_output_message(lr_eval_string("{ParamValueA}"));  //{ParamValueA}”对应定义的变量名

 

 

 

转载于:https://www.cnblogs.com/xxyBlogs/p/4238696.html

你可能感兴趣的文章
firefox中 checkbox属性checked="checked"已有,但复选框却不显示打钩的原因
查看>>
NSCache
查看>>
在liberty中通过LTPA设置单点登录
查看>>
eclipse在项目里面批量替换单词
查看>>
python re 正则表达式复习
查看>>
Filter—过滤器
查看>>
【C语言及程序设计】项目1-32-(5)&(6):输出小星星
查看>>
android 中对apache httpclient及httpurlconnection的选择
查看>>
1057. Stack (30) - 树状数组
查看>>
Charles使用三:设置代理
查看>>
linux下安装apache2.2.27
查看>>
C# 模式窗口下更新进度条
查看>>
git如何列出分支之间的差异commit
查看>>
tomcat配置证书
查看>>
手机端页面可以左右轻微拖动的bug
查看>>
关于Flume以及Kafka理解
查看>>
数据的前后台调用
查看>>
关于CS50课程
查看>>
Java基础之面向对象,类的创建和对象的实例化。
查看>>
swift泛型的5个要点和代码
查看>>