A. api接口测试的步骤
1、拿到接口文档的时候先分析文档,分析的内容有:请求类型、必填项、选填项、入参、出参及描述
2、编写测试用例,测试用例的编写参考下图;
3、利用eolinker、jmeter或者其它接口测试工具执行测试用例;
(在接口没有问题的情况下,前端测试出的bug都属于前端开发人员)
5、接口测试完成后再进行前端的功能及UI交互测试;
6、提交buglist清单,修复后一定要回归测试。
具体可以在eolinker在线使用了解: www.eolinker.com
B. 电脑培训分享软件开发接口测试的常见问题
对于一款程序来说,接口除了有对接外部的以外同时还有对程序内部的接口,下面电脑培训http://www.kmbdqn.com/就一起来了解一下,关于软件开发接口测试的常见问题。
一、常见接口:
1、webService接口:是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。可以使用的工具有SoapUI、jmeter、loadrunner等;
2、httpapi接口:是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是常用的两种请求方式。可以使用的工具有postman、RESTClient、jmeter、loadrunner等;
二、前端和后端:
在说接口测试之前,我们先来搞清楚这两个概念,前端和后端。
前端是什么呢,对于web端来说,咱们使用的网页,打开的网站,这都是前端,这些都是html、css写的;对于app端来说呢,它就是咱们用的app,android或者object-C(开发ios上的app)开发的,它的作用就是显示页面,让我们看到漂亮的页面,以及做一些简单的校验,比如说非空校验,咱们在页面上操作的时候,这些业务逻辑、功能,比如说你购物,发微博这些功能是由后端来实现的,后端去控制你购物的时候扣你的余额,发微博发到哪个账号下面,那前端和后端是怎么交互的呢,就是通过接口。
前面说的你可能不好理解,你只需记住:前端负责貌美如花,后端负责挣钱养家。
三、什么是接口测试:
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
C. APP完整测试流程
app主要核ui与实际设计的效果图是否一致;交互方面的问题建议,可以先与产品经理确认,确认通过后,才开始让开发实施更改或优化
根据软件说明或用户需求验证App的各个功能实现,实际测试过程一般都是根据功能测试用例来执行。测试覆盖率基本上都是有测试用例主导,也就是说在功能测试部分,是检验测试用例是否有效以及完整的,也就导致另外一个问题,测试用例怎么写的问题。
模拟用户真实使用app是会遇到的中断情况进行测试.如: 网络的断网, 切换网络, 断电,来电话/短信,听音乐,切换到其他app, 打开其他app 的通知等
新旧版本的在功能,逻辑层面的兼容测试, 同一个app 在不同系统版本运行,以及不同机型之间的适配测试兼容测试:接口的兼容性测试能够保证大部分的功能完善;app在不同系统版本上保证运行适配性: 屏幕,系统版本等(系统位数一定要考虑)该部分通过第三方的云平台进行
可测试的方面- 安装和启动时间- CPU的占用- 内存的占用- 流量的耗用- 电量的耗用- 后端,测试App中的各类操作是否满足用户响应时间要求,主要是测试点在网速方面,2g,3g,wifi, 4g一定要覆盖到- 后端 有网络并发
在各种边界压力情况下(如电池、存储、网速等),验证App是否能正确响应
反复/长期操作下,系统资源是否占用异常;Android 可是使用adb命令
压力测试主要集中在后端,前端的压力测试目前测的较少
App安全测试大概划分为以下几类:
从数据的本地存储到数据的传输、处理以及远程访问等各个环节,基于相应的安全标准/行业标准评估App的安全特性;
借鉴在Web App和网络安全测试的一些成功经验在智能终端App测试中进行裁减或适配;
检测App的用户授权级别,数据泄漏,非法授权访问等;
对App的输入有效性校验、认证、授权、敏感数据存储、数据加密等方面进行检测,以期发现潜在的安全问题;
基于各种通信协议或相应的行业安全标准检视App是否满足相应的要求。
这个简单的说就是站在用户的角度上进行使用app,学习成本低,易上手等,可以进行用户盲测,根据用户反馈的意见进行修改。测试人员可以通过与其他竞争品进行对比, 或者根据较大厂商app的交互习惯进行比较。
一般这部分建议使用自动化测试, 如果没有自动化测试,可以根据以下几方面进行测试:
线上测试是产品上线之后一定要完成的,这部分可以根据场景化进行回归测试,其中网络环境要全部覆盖一遍
D. 怎么jmeter对app做接口测试
用fidder抓取app的接口
然后在jmeter:
创建线程组
添加http请求
添加查看结果树
(在http请求中填写关系fidder抓到的接口信息)
就这样就可以了
E. 接口测试怎么才能做好
这个问题还是从需求、测试用例设计、执行来说吧。
首先要了解这个接口提供的服务的需求定义,那么我们就知道大概测试的结果是啥。同时理论上要先提供接口规范,方便后续测试,以及给调用者联调的一个文档约定。
根据测试的接口规范,基于业务进行场景设计,再结合边界值设计方法、等价类划分等常用设计方法进行用例设计。
1.设计的方向是常规的测试用例设计:协议规范测试、接口入参、接口出参。
协议规范测试:比如HTTP协议:URL地址、Header测试。不过一般情况下,默认调用者按照接口规范正常调用。这个不用过于详细测试。
2.接口入参:参数个数测试(注意是否必传字段),参数值测试(为空、正常值、非法值等,以及首尾有空格是否过滤)。
3.接口出参:至少涵盖一条成功的响应和一条失败的响应,当然我们测试出更多错误码,我们的覆盖率也就更全面。
4.业务场景用例: 这个需要你对于这个接口的业务的了解程度,而且这是最重要的部分。
比如中间使用了缓存服务(第一次缓存没有,是不是直接读数据源,并存入缓存;第二次直接读取缓存是否正确);
比如需要考虑请求外部的接口获取相应的信息的时间损耗(连接不上外部接口,外部接口下线了,外部接口响应太慢);
1.需要你对接口协议有一定的了解,选择适当的开源工具(如postman)或者自己编写脚本进行模拟请求。
2.需要熟悉接口所使用的中间件等知识(比如redis、kafka、mysql数据库)。
3.需要模拟外部接口返回给你现在正在验证的程序的接口。(比如扣费业务,你不可能每测一个业务,就去调真实扣费)。
是web开发接口吗?建议使用Postman
一、什么是接口?
接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。
二、 常用接口采用方式:
1、webService接口:是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。可以使用的工具有apipost、jmeter、loadrunner等;
2、http api接口:是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和
post等方法,这也是最常用的两种请求方式。可以使用的工具有apipost、jmeter、loadrunner等;
三、前端和后端
前端:网站前端是对网页静态页面的设计,通俗的来说,就是我们肉眼能看的到的东西,当我们浏览网站的时候所看到的页面上的内容几乎都是属于前端,前端的工作就是网站页面,静态的页面是没有后端成分的,前端主要包括html和css外加js等一些样式和布局。
后端: 网站的后端就是动态网站的技术,比如网站上的一些注册登录和一些弹窗,这些都是后端的逻辑,常用的后端语言有php,jsp等,后端的数据库也包含myspl等,都是对后端进行存储数据。
四、 接口测试概念
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等(通俗来说就是,检查业务逻辑是否满足业务需求,校验字段是否正常你实际结果是否满足预期)
五、 接口的组成:
a、接口说明
b、调用url
c、请求方法(getpostput等)
d、请求参数、参数类型、请求参数说明
e、返回参数说明
六、为什么要做接口测试,接口测试的目标
接口其实app和前端交互用的,所以好多人问,为啥做功能测试还要测接口,目标是啥不是多此一举吗?首先我告诉大家,这种想法是错误的
那么举一个例子:
例如一个登陆接口,例如产品上规定用户名6-10个字符数字下划线,但后端没做判断。但我们业务人员测试肯定验证,但只是前端做了校验,后端压根就忘了这个小需求.那么后果来了如果一个懂的直接抓包去篡改你的接口,然后绕过校验,通过sql注入直接随意登录。如果你这是一个下单业务,是不是给公司造成了很大损失
所以此时此刻接口测试目标来了:
1.可能发现客户端没有发现的bug(那么也叫隐藏bug)
2.及早爆出风险(保证质量正常上线)
3.接口稳定了,前端随便改
4.最重要检查系统安全性,稳定性
七、如何进行接口测试
1.使用接口测试工具进行测试,接口测试和接口文档生成工具apipost,接口测试和性能测试工具jmeter
2.接口状态码表示含义
例如:200(成功)/300(重定向别的地方)/400(请求语法错误)/500(服务器异常)
测试点:
B. 参数组合(传入不同值)
C. 接口安全(绕过验证/绕过身份验证/参数是否加密等)
D. 异常验证(输入异常参数边界值)
练
F. 如何测试APP充值接口
接口性能测试指标:接口响应速度、接口容错、接口负载
接口响应速度:调用接口响应速度太慢导致用户体验差;
接口容错:我理解接口即使现异app现闪退或者其功能异;
接口负载:给接口加压看承载能力需要根据需求设计确定所需负载量
概能想~
G. app会做接口测试嘛
接口自动化测试在后来出现,但现在大部分的互联网公司都喜欢用它作为测试工作辅助。原因很简单,UI自动化的缺点它都能进行弥补,但同时它也存在一个最大的问题:用户操作真实性不强。其实个人觉得接口自动化测试和UI自动化测试可以产生互补的测试。因为我们做接口测试时更多的是根据开发的技术进行测试HTTP\SOCKET等等(接口测试基本上不需要用到什么工具进行,如果一定需要的话建议是用SOAPUI),而非真实的进行对系统进行操作验证系统是否存在问题。模拟大量手机调用接口对服务器的压力,所以测试的重点还是在服务器上,你可以用Jmeter模拟接口报文,来并发压服务器,看服务器的响应和处理能力。接口自动化测试与APP自动化测试结合:其实和UI与APP自动化测试长流程的交换一样的原理,需要自动化测试框架的支撑。先进行接口测试用例的执行后进行APP的UI和接口测试的用例执行。
H. 第三方接口怎么测
接口嘛,顾名思义,就是对接时的一个口子。对于App来说,其实就是咱们在点点点时,移动端(app)与服务器(Server)数据交互时的一个交互地址,英文叫API,也有就叫URL的。由请求(Request)和响应(Response),以及相应的信息头(Request Header和 Response Header)组成。而咱们看到的URL,实际上是接口请求的地址(Request URL)。在操作App时,会将操作或填入的信息,都转成一一对应的参数,然后在Request Header里写好请求的识别规则,请求接口,之后服务器接收并解析处理。处理好后再写好的结果的识别规则,再返给App解析加载结果。Request Method:请求方法,该接口是GET的,一般常见的有GET、POST、PUT、DELETE,对应数据库的增删改查四种情况(CREATE -PUT、QUERY-GET、UPDATE-POST、DELETE-DELETE),作为概念理解,了解什么操作大概用什么请求方法即可。
I. 如何利用postman做app接口测试
1、在Google已安装完成的接口测试工具的postman的程序之后,点击进入桌面的chrome应用启动器。
J. 如何查看手机app的接口
1.先准备软件Fiddler
2.选择英文版或者汉化版打开,进行配置Tools->Fiddle options...完成下面两张图的配置
3.查看电脑的IP地址,并记录
4.打开手机Wifi使电脑和手机处于同一个Wifi下。手机长按该Wifi选择修改网络,勾选显示高级选项,在代理一栏选择手动,在服务器主机名中输入上面查看到的电脑IP地址,服务器端口输入8888点击保存。
5.修改完成后打开手机浏览器输入“http://ipv4.fiddler:8888”进入该网页,点击FiddlerRoot certificate下载Fiddler的证书。
6.下载完成之后打开手机设置->安全和隐私->从Sd卡安装->选择刚刚下载的证书->为证书命名->再点击受信用的凭据->用户->如果出现DO_NOT_TRUST列表项表示证书安装成功。
7.配置完成之后在手机端使用App电脑端的Fiddler就能捕捉到应用的请求接口。右键该接口选择Copy->just Url就可以复制该接口。在浏览器中粘贴使用即可获取数据(POST请求需要使用接口测试工具打开,Get无限制)