做接口测试默认端口(如何测试端口)

网友投稿 540 2023-01-05


本篇文章给大家谈谈做接口测试默认端口,以及如何测试端口对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享做接口测试默认端口的知识,其中也会对如何测试端口进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何使用WebSocket做接口测试?

如果遇见了一个全新的协议,怎么从零开始,完成接口测试?以 WebSocket 为例。

WebSocket 协议在2008年诞生,2011年成为国际标准。现在所有浏览器都已经支持了。WebSocket 的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话。

WebSocket 的其他特点:

1. 建立在 TCP 协议之上,服务器端的实现比较容易。

2. 与 HTTP 协议有着良好的兼容性。默认端口也是80和443,并且握手阶段采用 HTTP 协议,因此握手时不容易屏蔽,能通过各种 HTTP 代理服务器。

3. 数据格式比较轻量,性能开销小,通信高效。

4. 可以发送文本,也可以发送二进制数据。

5. 没有同源限制,客户端可以与任意服务器通信。

6. 协议标识符是ws(如果加密,则为wss),服务器网址就是 URL。


· ws–http(未加密) 无证书
· wss–https(加密) 有证书


第一步:

很多时候第一反应向开发工程师求助,因为开发工程师基于新协议已经完成了接口开发,向开发工程师求助显然是最好的办法。找到一些学习脉络,包含了协议的说明文档、代码开发文档、实现代码等内容,了解协议的原理。向开发求助是个方法。

那么 WebSocket 用 Fiddler 怎么搞定?,其实主要就是修改了 Fiddler 中 Rules 下的 Customize Rules,如果感兴趣可以自己去搜一下。当面对陌生技术问题的时候,应该使用最熟悉的技术去尝试解决问题。虽然 Fiddler 截获 WebSocket 接口的办法,所截获的全部消息都在日志里面,根本无法操作。但是,可以借助 Fiddler 分析 WebSocket 的接口,一开始给 Fiddler 这款工具的定位一样,那就是通过它辅助分析我们的被测接口。处理HTTP、HTTPS,推荐用Fiddler。

但是在处理TCP,UDP 就用WireShark。Websocket是应用层协议,建立在 TCP 协议之上,服务器端的实现比较容易。因为应用层是在传输层的基础上包装数据,所以我们还是从底层开始了解Websocket到底是个啥?是如何工作的?


可以通过---- wireshark(网络封包分析软件)抓包工具抓到WebSocket接口

wireshark下载地址:https://www.wireshark.org/download.html

以下是python实现的websocket 接口连接。


API_接口测试规范

一、接口测试

接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间做接口测试默认端口的交互。测试的重点是要检查数据的交换做接口测试默认端口,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

二、接口测试的意义

按照分层测试模型,处于中间层的接口测试,在稳定性,效率,成本,技术,实施难度上综合来讲,是收益最大的。相较于传统的UI层次的测试,接口测试把测试提前了(时间上,架构上),并且能够覆盖到一些UI测试无法触及的功能点,提高了测试的覆盖率,对质量控制提升了信心。接口测试也更容易实现自动化持续集成,支持后端快速发版需求,利于CT(持续测试)的开展。
三、认识URL

接口主要分为2大类:

1.webservice接口

webService接口是走soap协议通过http传输,请求报文和返回报文都是xml格式的,做接口测试默认端口我们在测试的时候都用通过工具(例如:soapUI)进行调用,测试。【暂时业务上用不到,不扩展】

2.http 接口

Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求。Http会通过TCP建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,Http会立即将TCP连接断开,这个过程是很短的。所以Http连接是一种短连接,是一种无状态的连接。

3.URL解析

    在WWW上,每一信息资源都有统一的且在网上唯一的地址,该地址就叫URL(Uniform Resource Locator,统一资源定位符),它是WWW的统一资源定位标志,就是指网络地址。HTTP协议工作于客户端-服务端架构之上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。

 URL由三部分组成:资源类型、存放资源的主机域名、资源文件名。

也可认为由4部分组成:协议、主机、端口、路径

URL的一般语法格式为(带方括号[]的为可选项):【参考 URL百度百科 】

protocol :// hostname[:port] / path / [;parameters][?query]#fragment

以下面的URL为例:

http://blog.xx.com.cn/s/blog_537ad6610102xtb1.html?tj=hist

1)、协议部分,代表页面使用的是http协议,在Internet中可以使用多种协议,如HTTP,FTP等等。在"HTTP"后面的“//”为分隔符;

2)、域名部分, blog.xx.com.cn ,也可以使用IP地址作为域名使用如:192.168.55.14:8080,其中8080为端口,域名和端口之间使用“:”作为分隔符。端口不是一个URL必须的部分,如果省略端口部分,将采用默认端口80/tcp;

3)、虚拟目录部分,从域名后的第一个“/”开始到最后一个“/”为止,是虚拟目录部分。虚拟目录也不是一个URL必须的部分。本例中的虚拟目录是“/s/”

4)、文件名部分:从域名后的最后一个“/”开始到“?”为止,是文件名部分,如果没有“?”,则是从域名后的最后一个“/”开始到“#”为止,是文件部分,如果没有“?”和“#”,那么从域名后的最后一个“/”开始到结束,都是文件名部分。本例中的文件名是“blog_537ad6610102xtb1.html”。文件名部分也不是一个URL必须的部分,如果省略该部分,则使用默认的文件名

5)、锚部分:从“#”开始到最后,都是锚部分。锚部分也不是一个URL必须的部分(可以理解为定位)

6)、参数部分:从“?”开始到“#”为止之间的部分为参数部分,又称搜索部分、查询部分。本例中的参数部分为“7.参数部分:从“?”开始到“#”为止之间的部分为参数部分,又称搜索部分、查询部分。本例中的参数部分为“boardID=5ID=24618page=1”。参数可以允许有多个参数,参数与参数之间用“”作为分隔符。”。参数可以允许有多个参数,参数与参数之间用“”作为分隔符。

四、测试范围及用例设计思路

接口测试范围分为以下5个方向:
五、测试流程

分析接口文档和需求文档(接口说明、请求方式、请求URL、请求参数、返回数据、返回实例)

接口用例设计   

编写接口测试用例

接口测试执行

输出接口测试报告。

六、如何快速评估自己的测试用例覆盖率:

1)参数验证是否完整(包括各种边界和业务规则)

2)业务需求点覆盖是否完整(单接口业务功,依赖接口业务功能)

3)接口异常场景覆盖是否完整(数据的异常)

八、接口测试用途

回归测试

非功能性测试

增量开发,持续集成的项目。

fiddler抓包详细教程--接口测试

前言

Fiddler最大的优势在于抓包,我们大部分使用的功能也在抓包的功能上,fiddler做接口测试也是非常方便的。

对应没有接口测试文档的时候,可以直接抓完包后,copy请求参数,修改下就可以了。

Composer简介

点开右侧Composer区域,可以看到如下界面,就是测试接口的界面了
1.请求方式:点开可以勾选请求协议是get、post等

2.url地址栏:输入请求的url地址

3.请求头:第三块区域可以输入请求头信息

4.请求body:post请求在此区域输入body信息

5.执行:Execute按钮点击后就可以执行请求了

6.http版本:可以勾选http版本

7.请求历史:执行完成后会在右侧History区域生成历史记录

模拟get请求

1.在Composer区域地址栏输入博客首页: http://www.cnblogs.com/yoyoketang/

2.选择get请求,点Execute执行,请求就可以发送成功啦

3.请求发送成功后,左边会话框会生成一个会话记录,可以查看抓包详情

4.右侧history区域会多一个历史请求记录

5.会话框选中该记录,查看测试结果:

选中该会话,点开Inspectors

response区域点开Raw区域

Raw查看的是HTML源码的数据
也可以点WebView,查看返回的web页面数据
Json数据

1.有些post的请求参数和返回参数是Json格式的,如博客园的登录请求: https://passport.cnblogs.com/user/signin

2.在登录页面手动输入账号和密码,登录成功。

3.找到这个登录成功的会话,查看json数据如下图:
模拟post请求

1.请求类型勾选post

2.url地址栏输入对应的请求地址

3.body区域写登录的json参数,json参数直接copy上一步抓包的数据,如下图红色区域
4.header请求头区域,可以把前面登录成功后的头部抓包的数据copy过来

(注意,有些请求如果请求头为空的话,会请求失败的)
5.执行成功后查看测试结果:

–执行成功如第三所示的图,显示success=True

–执行失败如下图所示,显示

message=Invalid length for a Base-64 char array or string.

success=False
get请求(url详解)

前言

上一篇介绍了Composer的功能,可以模拟get和post请求,get请求有些是不带参数的,这种比较容易,直接放到url地址栏就行。有些get请求会带有参数,本篇详细介绍url地址格式。

url详解

1.url就是我们平常打开百度在地址栏输入的: https://www.baidu.com ,如下图,这个是最简单的url地址,打开的是百度的主页
2.再看一个稍微复杂一点的url,在百度输入框输入:上海悠悠博客园
3.查看url地址栏,对比之前的百度首页url地址,后面多了很多参数。当然最主要的参数是:wd=上海悠悠博客园(后面的一大串可以暂时忽略)。

4.那么问题来了,这些参数有什么作用呢?

可以做个简单的对比,在地址栏分别输入:

https://www.baidu.com

https://www.baidu.com/s?wd=上海悠悠博客园

对比打开的页面有什么不一样,现在知道作用了吧,也就是说这个多的”/s?wd=上海悠悠博客园”就是搜索的结果页面

url解析

1.以” https://www.baidu.com/s?wd=上海悠悠博客园”这个url请求的抓包为例
2.那么一个完整的url地址,基本格式如下:

https://host :port/path?xxx=aaaooo=bbb

http/https:这个是协议类型,如图中所示

host:服务器的IP地址或者域名,如图中2所示

port:HTTP服务器的默认端口是80,这种情况下端口号可以省略。

如果使用了别的端口,必须指明,例如:192.168.3.111:8080,这里的8080就是端口

path:访问资源的路径,如图中3所示/s (图中3是把path和请求参数放一起了)

?:url里面的?这个符号是个分割线,用来区分问号前面的是path,问号后面的是参数

url-params:问号后面的是请求参数,格式:xxx=aaa,如图4区域就是请求参数

:多个参数用符号连接

请求参数(params)

1.在url里面请求参数一般叫params,但是我们在fiddler抓包工具看到的参数是:QueryString

2.QueryString是像服务端提交的参数,其实跟params是一个意思,每个参数对应的都有name和value值

3.多个参数情况如下:
UrlEncode编码

1.如果url地址的参数带有中文的,一般在url里面会是这样的,如第二点里的wd=%E4%B8%8A%E6%B5%B7%E6%…

像看到%E4这种编码的就是经过url编码过的,需要解码就能看到是什么中文了

2.用urlencode在线编码/解码工具,地址: http://tool.chinaz.com/tools/urlencode.aspx
post请求(body)

前言上一篇讲过get请求的参数都在url里,post的请求相对于get请求多了个body部分,本篇就详细讲解下body部分参数的几种形式。

注意:post请求的参数可以放在url,也可以放在body,也可以同时放在url和body,当然post请求也可以不带参数。

只是一般来说,post请求的参数习惯放到body部分

body数据类型

常见的post提交数据类型有四种:

1.第一种:application/json:这是最常见的json格式,也是非常友好的深受小伙伴喜欢的一种,如下

2.第二种:application/x-www-form-urlencoded:浏览器的原生 form 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数

3.第三种:multipart/form-data:这一种是表单格式的,数据类型如下:

4.第四种:text/xml:这种直接传的xml格式

json格式

1.打开博客园的登录页面,输入账号密码后抓包,查看post提交数据,点开Raw查看整个请求的原始数据
2.前面讲过post的请求多一个body部分,上图红色区域就是博客园登录接口的body部分,很明显这种格式是前面讲到的第一种json格式

3.查看json格式的树状结构,更友好,可以点开JSON菜单项
4.查看这里的json数据,很明显传了三个参数:

input1:这个是登录的账号参数(加密过)

input2:这个是登录的密码参数(加密过)

remember:这个是登录页面的勾选是否记住密码的选项,False是不记住,True是记住

x-www-form-urlencoded

1.登录博客园后,打开新随笔,随便写一个标题和一个正文后保存,抓包数据如下
2.如上图的这种格式,很明显就属于第二种了,这种类型的数据查看,在WebFrom里面查看了
3.上面红色框框的Query String是url里面的参数,下面红色框框的body部分就是这次post提交的body参数部分了。

WebFrom

1.为什么登录请求的WebFrom的body部分为空呢?
2.看上图红色框框的显示:这里只支持application/x-www-form-urlencoded这种格式的body参数,也就是说json格式的,需要在JOSN这一栏查看了。

Http协议默认端口号为( )

代理服务器常用以下端口:
(1). HTTP协议代理服务器常用端口号:80/8080/3128/8081/9080
(2). SOCKS代理协议服务器常用端口号:1080
(3). FTP(文件传输)协议代理服务器常用端口号:21
(4). Telnet(远程登录)协议代理服务器常用端口:23

HTTP服务器,默认的端口号为80/tcp(木马Executor开放此端口);
HTTPS(securely transferring web pages)服务器,默认的端口号为443/tcp 443/udp;
Telnet(不安全的文本传送),默认端口号为23/tcp(木马Tiny Telnet Server所开放的端口);
FTP,默认的端口号为21/tcp(木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口);
TFTP(Trivial File Transfer Protocol ),默认的端口号为69/udp;
SSH(安全登录)、SCP(文件传输)、端口重定向,默认的端口号为22/tcp;
SMTP Simple Mail Transfer Protocol (E-mail),默认的端口号为25/tcp(木马Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口);
POP3 Post Office Protocol (E-mail) ,默认的端口号为110/tcp;
WebLogic,默认的端口号为7001;
Webshpere应用程序,默认的端口号为9080;
webshpere管理工具,默认的端口号为9090;
JBOSS,默认的端口号为8080;
TOMCAT,默认的端口号为8080;
WIN2003远程登陆,默认的端口号为3389;
Symantec AV/Filter for MSE ,默认端口号为 8081;
Oracle数据库,默认的端口号为1521;
ORACLE EMCTL,默认的端口号为1158;
Oracle XDB( XML 数据库),默认的端口号为8080;
Oracle XDB FTP服务,默认的端口号为2100;
MS SQL*SERVER数据库server,默认的端口号为1433/tcp 1433/udp;
MS SQL*SERVER数据库monitor,默认的端口号为1434/tcp 1434/udp;
QQ,默认的端口号为1080/udp

测试工程师面试,接口测试问题总结

1、什么是接口?

2、什么是接口测试?

3、接口组成做接口测试默认端口的要素有哪些?

4、Python 的 requests 包是干什么的?

5、如何使用 Python 的 requests 包?

6、为什么开展接口测试?

7、为什么要写接口测试用例?

8、接口测试用例设计主要考虑哪些?

9、接口测试用例包含哪些内容?

10、接口测试如何设计用例?

11、通用接口用例设计?

12、接口测试报告包含哪些内容?

13、测试指标范围包含哪些?

14、做接口测试运用过哪些测试工具?

15、抓包工具用过哪些?

16、为什么进行抓包测试?

17、TCP/IP 参考模型有哪几层?

18、常用协议的端口号?

19、常见的状态码有哪些?

20、你们公司的接口测试流程是怎样的?

21、请详细阐述接口测试和 UI 测试在测试活动中是如何协同测试的?

22、接口测试注意事项?

23、接口测试执行中对比数据库吗?

24、请简述一下 cookie、session 以及 token 的区别?

25、谈谈你对 HTTP 协议的做接口测试默认端口了解?

26、你对 http 请求跟 webservice 请求的了解?

27、在接口测试中关联是什么含义?如何使用 Postman 设置关联?

28、接口自动化测试框架一般分为几层?

29、测试框架里如何做到数据和代码分离?

1、什么是接口?

接口就是 API,意思是应用程序编程接口。

接口本质上是程序开发的函数和方法,提供参数和返回值。

2、什么是接口测试?

接口测试是测试系统组件间接口的一种测试,接口测试主要用于检测外部系统和内部系统之间以及各个子系统之间的交互点。测试的重点是检查数据的交换、传递和控制管理的过程,以及系统间的相互逻辑依赖关系等。

3、接口组成的要素有哪些?

接口访问的地址、请求的方法、参数、返回值

(1)接口访问的地址 协议://IP 地址或域名:端口号/应用名/功能名

(2)请求的方法 get、post 等

(3)参数 用户使用接口时,需要向接口提供的数据。

(4)返回值 接口给用户的反馈结果。

4、Python 的 requests 包是干什么的?

requests 是一个 HTTP 库,作用是发送 HTTP 请求,获得响应,往往使用在网络爬虫,接口自动化测试中。

5、如何使用 Python 的 requests 包?

(1)安装 Python

(2)安装 requests 模块

(3)创建.py 文件

(4)导入 requests 模块

(5)编写 Python 代码

(6)调用 requests 方法

6、为什么开展接口测试?

接口测试属于集成测试、测试接入越早,就越能在项目早期发现问题,修复问题成本降低。

接口测试非常快速,UI 自动化执行一个测试用例 10s 左右,接口用例执行一般毫秒级。

7、为什么要写接口测试用例?

(1)理清思路,避免漏测和重复测试。

(2)提高测试效率、跟进测试进度、告诉领导做过、跟进重复性工作。

(3)更好的记录问题、发现问题、复现问题、同时这也是接口测试流程中的一个产物。

8、接口测试用例设计主要考虑哪些?

(1)功能是否正常。

(2)功能是否按照接口文档实现、是否依赖业务、异常情况(参数异常、数据异常)、安全测试等。

9、接口测试用例包含哪些内容?

用例名称、接口地址、请求方式、前置条件、描述、请求头部、请求参数、状态码、预期返回结果

10、接口测试如何设计用例?

接口测试一般考虑入参形式的变化和接口的业务逻辑。

一般设计接口测试用例采用等价类、边界值、场景法居多。

接口测试用例设计思路:

(1)接口业务逻辑测试,接口逻辑测试是指根据业务逻辑,输入参数,输出值的描述,对正常输入情况下所得输出值是否正确的测试,也就是测试对外提供的接口服务是否正常。

(2)模块接口测试,模块接口测试是为了保证数据的安全及程序在异常情况下的逻辑正确性而进行的测试模块,接口测试主要包括以下几个方面

a.鉴权码 token 异常(为空、没有、错误、过期)

b.其他参数的异常,必填项的检查,参数的长度、类型、格式异常。常规的参数有数字,字符串,日期;参数长度,位数、身份证、电话的长度;参数的类型,数字精度,字母,中文,带空格的参数,特殊字符;日期格式,日期年月日,年月日时分秒,日期格式(包含/-:等)

c.错误码异常覆盖

11、通用接口用例设计?

(1)通过性验证:首先肯定要保证这个接口功能是好使的,也就是正常的通过性测试,按照接口文档上的参数,正常传入,是否可以返回正确的结果。

(2)参数组合:现在有一个操作商品的接口,有个字段 type,传 1 的时候代表修改商品,商品 id、商品名称、价格有一个是必传的,type 传 2 的时候是删除商品,商品 id 是必传的,这样就要测参数组合了,type 传 1 的时候,只传商品名称能不能修改成功,id、名称、价格都传的时候能不能修改成功。

(3)接口安全:绕过验证,比如说购买了一个商品,它的价格是 300 元,那做接口测试默认端口我在提交订单时候,我把这个商品的价格改成 3 元,后端有没有做验证,更狠点,我把钱改成-3,是不是我的余额还要增加?绕过身份授权,比如说修改商品信息接口,那必须得是卖家才能修改,那我传一个普通用户,能不能修改成功,我传一个其他的卖家能不能修改成功。参数是否加密,比如说我登陆的接口,用户名和密码是不是加密,如果不加密的话,别人拦截到你的请求,就能获取到你的信息了,加密规则是否容易破解。密码安全规则,密码的复杂程度校验。

(4)异常验证:所谓异常验证,也就是我不按照你接口文档上的要求输入参数,来验证接口对异常情况的校验。比如说必填的参数不填,输入整数类型的,传入字符串类型,长度是 10 的,传 11,总之就是你说怎么来,我就不怎么来,其实也就这三种,必传非必传、参数类型、入参长度。

12、接口测试报告包含哪些内容?

系统接口概况、测试目的与范围、测试工具与资源、测试记录及结果分析(单场景接口、混合场景接口)、测试结论

13、测试指标范围包含哪些?

(1)被测接口接收请求和返回报文。

(2)被测接口返回状态、被测接口对应业务逻辑处理、涉及数据沉淀的处理、复杂场景下多个接口串联交互。

14、做接口测试运用过哪些测试工具?

(1)Postman

(2)JMeter

(3)SoapUI

(4)Python + requests

(5)Java + HttpClient

(6)Java + OkHttp

15、抓包工具用过哪些?

(1)Fiddler

(2)Charles

(3)Wireshark

16、为什么进行抓包测试?

有些时候公司没有标准的接口文档,测试人员只能抓包来获取接口信息。

抓包可以迅速找到请求,通过抓包可以查看整个请求过程,以及响应过程,可以通过抓包来分辨前台还是后台 bug。

通过抓包,可以查看是否有敏感信息泄露,比如用户密码和个人账号信息等数据。

通过抓包进行测试,拦截请求,修改请求数据,查看对应响应结果,抓包本身就是接口测试的一部分。

17、TCP/IP 参考模型有哪几层?

应用层、传输层、网络层、网络接口层

18、常用协议的端口号?

(1)21/tcp FTP 文件传输协议

(2)22/tcp SSH 安全登录、文件传送(SCP)和端口重定向

(3)23/tcp Telnet 不安全的文本传送

(4)25/tcp SMTP Simple Mail Transfer Protocol(E-mail)

(5)69/udp TFTP Trivial File Transfer Protocol(微型文件传输协议)

(6)80/tcp HTTP 超文本传送协议(WWW)

(7)110/tcp POP3 Post Office Protocol(E-mail)

(8)443/tcp HTTPS used for securely transferring web pages

(9)3389/tcp 远程访问 5631/tcp

(10)5632/udp pcanywhere 端口号

(11)1433 SqlServer 服务端口号

(12)1521 Oracle 服务端口号

(13)3306 Mysql 服务端口号

(14)8080 Tomcat 默认服务端口号

19、常见的状态码有哪些?

(1)1XX 信息提示,用于指定客户端相应的某些动作。

(2)2XX 成功,用于表示请求成功。

(3)3XX 重定向,用于移动的文件并且常被包含在定位头信息中制定的新的地址信息。

(4)4XX 客户端错误,用于指出客户端的错误。

(5)5XX 服务器错误,用于指出服务器的错误。

20、你们公司的接口测试流程是怎样的?

(1)从开发中取得接口文档,了解接口业务,主要包括接口地址、请求方式、入参、出参、返回格式等信息。

(2)使用 Jmeter 进行接口测试,创建一个线程组,然后建立一个 http 请求默认值,再新建很多 http 请求,一个请求是一个用例,输入相应接口路径、访问方式、参数等,创建断言和察看结果树。

(3)最后调用并执行测试用例,编写测试报告。

(4)在做接口测试的时候遇到过很多问题,都是自己独立解决的,比如返回值乱码(修改 Jmeter 的配置文件为 UTF-8)。

21、请详细阐述接口测试和 UI 测试在测试活动中是如何协同测试的?

接口测试和 UI 测试这两块其实是有一部分是重叠的,UI 测试是通过前端写的界面来调用接口,而接口测试是直接调接口。所以排除前端的处理的逻辑和调用的正确性,在理论上接口测试是可以覆盖所有的 UI 测试。但实际过程中,如果只是在接口层覆盖所有的业务流,在 UI 上只测试前端的逻辑,最终的结果可能会是忽视很多原有的功能点,导致了 UI 测试的不充分。所以存在多人分工且时间充分的时候可以尝试接口去做业务流的全覆盖,否则不要轻易尝试。

22、接口测试注意事项?

(1)改变请求参数,看响应结果是否和接口文档一致。

(2)查看参数是否有敏感信息(比如个人账户信息,资金信息)。

(3)查看是否对关键参数进行加密处理(密码信息)。

(4)所有列表页接口必须考虑排序值。

(5)接口返回的图片地址能否打开,图片尺寸是否符合需求。

(6)接口有翻页时,页码与页数的异常值测试。

(7)当输出参数有联动性时,需要校验返回两参数的实际结果是否都符合需求每个接口入参的默认值、异常类型、非空校验。

(8)入参支持多个值时,要考虑传的值的个数多的情况下,接口会不会报错。

23、接口测试执行中对比数据库吗?

肯定要对比,因为接口返回值的数据来源于数据库,接口对数据的操作还要进行深层次的数据库检查。

24、请简述一下 cookie、session 以及 token 的区别?

cookie 数据存放在客户的浏览器上、session 数据放在服务器上、token 是接口测试时鉴权码,一般情况下登陆后才可以获取到 token,然后在每次请求接口时需要带上 token 参数。

cookie 不安全,别人可以分析存在本地的 cookie 并进行 cookie 欺骗,考虑到安全应当使用 session 可以将登录信息等重要信息存放为 session,其他信息可以保存在 cookie。

25、谈谈你对 HTTP 协议的了解?

超文本传输协议,端口为 80,是由请求和响应两部分组成的。

请求是由请求头,请求行,请求正文组成;响应是由响应头、响应行、响应正文组成。

面向安全的话使用 https。

26、你对 http 请求跟 webservice 请求的了解?

(1)http api 接口:是走 http 协议,通过路径来区分调用的方法,请求报文都是 key-value 形式的,返回报文一般都是 json 串,有 get 和 post 等方法,这也是最常用的两种请求方式。可以使用的工具有 postman、RESTClient、jmeter、loadrunner 等。

(2)webservice 接口:是走 soap 协议通过 http 传输,请求报文和返回报文都是 xml 格式的,都是通过工具才能进行调用与测试。可以使用的工具有 SoapUI、jmeter、loadrunner 等。

27、在接口测试中关联是什么含义?如何使用 Postman 设置关联?

关联就是把上一个接口返回值的部分截取出来,作为下一个接口的参数,能让接口串联运行。

在 Postman 中设置关联的步骤如下:

(1)通过正则表达式提取的方式或 json 取值的方式把下一个接口需要的信息从上一个接口截取出来。

(2)使用设置全局变量的代码把取出来的值保存到全局变量里。

(3)在下一个接口中,使用(全局变量)代替要替换的静态值。

28、接口自动化测试框架一般分为几层?

自动化测试框架一般分为 5 层(配置层,脚本层,数据层,测试报告层,驱动层)

接口项目工程规划大致可分为几类,首先是测试结果类,比如说叫 test_rusult,里面存放一些比如日志文件,测试报告。然后是测试用例 testcase,里面分模块存放测试用例。接下来是公共方法类,比如说叫 public,或者是 tools,里面存放一些,读取 excel 数据的方法,发送 http 请求的方法,收集 log 日志的方法,发送邮件,操作数据库等方法。还有就是配置文件类,比如说叫 config,里面存放一些指定运行部分用例的配置文件,连接数据库的配置文件。最后是写一个 run 方法,运行所有的用例。

29、测试框架里如何做到数据和代码分离?

第一种:写在 excel 表格里,像这种主要是读取 excel 数据有点麻烦,常用的用来读取 excel 的第三方库有 openpyxl,xlrd 等。当然读取 excel 数据最好用的还是用来做数据分析的 pandas 模块,不用写那么多 for 循环。

第二种:数据存放到 yaml 文件里,一个模块或者是一个功能写一个 yaml 文件,最后写个读取 yaml 文件的公共方法就行了。yaml 格式的文件比较简单。

第三种:存放在数据库里面。

第四种:数据存放在 json 文件里。

技术干货 -postman接口测试获取HTTP请求

如果你正在使用API构建客户端应用程序—移动应用程序、网站或桌面应用程序—你可能希望看到在应用程序中发送和接收的实际HTTP请求流量。在某些情况下,可能会发现甚至没有文档记录的API。Postman可以提供查看和捕获这些网络流量的工具。可以在Postman本机应用程序中使用内置的代理,或者在Postman应用程序中使用拦截器扩展。

注意: 对于Postman本机应用程序,如果网站启用了HSTS,则通过HTTPS捕获的请求将无法工作。大多数网站都有这个功能。

您可以使用以下两种方式捕获HTTP请求:

l 使用Postman内置代理

l 使用拦截器



Postman应用程序中有一个捕获HTTP请求的代理。

l Postman应用程序监听客户端应用程序或设备发出的任何呼叫。

l Postman代理捕获请求并将请求转发到服务器。

l 服务器通过Postman代理将响应返回给客户机。



与Chrome拦截器扩展类似,Postman应用代理也会拦截和捕获你的请求。在此场景中,Postman应用程序是代理,您可以像下面的示例一样检查从您的手机发出的HTTP通信,并在侧栏的History选项卡下记录所有网络请求。




在本教程中,我们将使用Postman的代理特性来检查从您的手机发出的HTTP通信。首先,确保您的计算机和移动设备连接到同一个本地无线网络。

步骤1:在Postman中设置代理

单击标题工具栏中的图标,打开邮递员应用程序(MacOS)中的代理设置模式。



请注意代理设置中提到的端口。在本例中,让我们将它保持在默认端口5555。设定目标为“ 历史 ”。这将导致您的所有请求都被捕获并存储在 历史 侧栏面板中。



第二步:记下你电脑的IP地址


在OS X上,计算机的IP地址可以在System Preferences 网络中找到。你的系统的IP地址将类似于这里的示例192.168.0.101。

步骤3:在移动设备上配置HTTP代理


打开移动设备的无线设置并更新无线连接的配置以使用HTTP代理。在第二步中,使用从计算机检索到的IP设置IP地址。将端口设置为您在步骤1的Postman中创建的端口。



将设备(本例中为iPhone)的代理IP地址设置为从系统和端口5555获得的IP地址。


你都准备好了!转到Postman应用程序,将开始看到在侧边栏的History选项卡下列出的网络呼叫。打开设备的web浏览器或应用程序,将开始看到HTTP流量通过应用程序或浏览器。




更广泛地开发社区已经发布了一些有用的教程,用于在各种操作系统上设置代理服务器。

l Widows

l Linux

l macOS

l Android


你可以使用Postman拦截器捕获HTTP请求,并将它们保存到 历史 记录或集合中。下面的屏幕演示了这一点:



您可以将请求保存到 历史 记录中,向URL添加额外的过滤器,甚至可以对特定方法的请求进行过滤。上面的屏幕在URL字段中指定了Spotify,在方法字段中指定了Post方法。在本例中,Postman使用Post方法查找包含Spotify字符串的任何URL,并将其保存到History选项卡。您还可以将捕获的请求添加到History选项卡或任何集合中。

如果你想成为备受企业青睐的IT人才

想要高薪offer

技术经验不够顶怎么办?

点击下方我来教你

全套【软件测试/自动化测试】海量资料免费领取

关于做接口测试默认端口和如何测试端口的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 做接口测试默认端口的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于如何测试端口、做接口测试默认端口的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:接口自动化框架 运行(java接口自动化框架用例管理)
下一篇:简单了解JAVA构造方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~