多测师肖sir_高级金牌讲师__接口测试之练习题(6.1)

news2024/11/24 16:11:46

常见的接口面试题目:

1.postman接口测试,它有一个功能可以设置参数化,你有用过吗?
用过
(1)新建一个csv.文件 填写user、pwd
新建一个全局变量 user、pwd
点击body==form-data 填写user、pwd
点击run 导入csv.件
查看结果
(2){{}} 使用变量 ,在环境变量中添加值

2.你测试过哪些接口?
接口类型: http 接口 webserver 接口

项目中接口:用户登录接口;添加用户接口;查询栏目接口;

3有做过接口测试吗?接口测试你们是怎么测的
做过
首先是从开发那里拿到API接口文档,了解接口业务、包括接口地址、请求方式,入参、出参,token鉴权,返回格式等信息。
然后使用Postman或Jmeter工具执行接口测试
一般使用Jmeter的步骤是这样的:
1)新建一个线程组。
2)然后就是新建一个HTTP请求默认值。(输入接口服务器IP和端口)
3)再新建很多HTTP请求,一个请求一个用例。(输入接口路径,访问方式,参数等。)
4)然后创建断言和查看结果树。
最后调试并执行用例,最后编写接口测试报告。

4.多接口怎么测(postman里面有一个批量处理)
postman做接口集合测试注意细节有三点:
1、我们要实现批量执行接口用例
2、在批量执行接口用例时,我们需要在对应的用例加断言一般用tests[重命名]responsebody.has(内容)
3、在执行完成后,我们只需关注断言失败的用例(要是密码改不了,需要删除cookie后再登录,再修改密码)
执行,首先在collections中新建一个文件夹,把要测试的用例saveas到这个文件夹中,并重新命名,注意我们的格式和数据,及cookie值是否保存。
完成之后,第二步就是来到runner运行,选择文件夹,环境选择、根据参数来选择执行次数。等待时间、参数范围、data数据类型本地本件、文件格式txt,勾是处理编码问题。
最后看运行结果,只看body中的参数是否传入中却就可以了,因为有断言

5.get和post请求的区别

get和post请求都是客户端向服务器提交的一种请求方式
get是明文传输参数、倾向于请求服务器资源。比如打开网站
post传输数据不可见,安全性高,倾向于向服务器提交数据,比如注册等
6.接口请求的基本结构
1.操作历史
2.接口地址
3.服务端返回数据

7.接口自动化测试怎么做的
和第四题一样;

8.业务中接口测试的业务请求是怎样的?
一个具体的接口讲解:
请求参数有哪些?
返回参数有哪些?
比如:登录接口:账号,密码 请求, 返回的是登录成功200,或密码错误300,账号错误400, 请输入账号密码500 ,账号为空600

9.调用接口异常有哪些测试点?
 异常分为两类,参数异常和数据异常
  参数异常:
  关键字参数:将参数写为开发语言中的关键字
  参数为空:比如去掉了username参数
  多或少参数:多或者少参数的验证,现在还不确定如果一个接口多了参数如果没有报错是否是合理的,或者是否需要优化,因为就目前开发给予的答案拿是,一般不对接口多了参数的处理
  错误参数:比如将username参数写为了user等看是否能返回相应的error?code
  数据异常:
  关键字数据:将参数的值填为开发语言中的关键字
  数据为空:将参数的额值填为空
  长度不一致:因为数据库中每个字段都设置有字段长度,填写不符合的长度进行验证
  错误数据:就是将参数的值任意填写,或填写不存在的数值
  异常类型测试: 比如count参数,这个参数的类型一定是可以转换为int类型的,这时候我们需要测试如果传的一些不可以 转换为int类型值来测试代码是否加入判断

10.是怎么处理接口超时的?
1.增加超时时间
2.尝试多调用一次
3.使用待处理队列
4.回滚数据
5.使用异步机制

(2)如何设置接口超时 ?

在这里插入图片描述
在这里插入图片描述

11.一个完整的请求有哪几部分组成?
请求方式
url:统一资源定位符,接口的访问地址(包含服务器地址+接口地址)
请求体部
Web表单传输格式
键 值
响应体
响应内容
12请求方式有哪些?
其实HTTP协议是一个广泛应用的Internet协议,目前常用八种请求方式,分别是GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。

13请求正文的文本格式?
xml、json、txt、html

14.请求头包含哪些内容
请求(客户端->服务端[request])
Accept: /(客户端能接收的资源类型)
Accept-Language: en-us(客户端接收的语言类型)
Connection: Keep-Alive(维护客户端和服务端的连接关系)
Host: localhost:8080(连接的目标主机和端口号)
Referer: http://localhost/links.asp(告诉服务器我来自于哪里)
User-Agent: Mozilla/4.0(客户端版本号的名字)
Accept-Encoding: gzip, deflate(客户端能接收的压缩数据的类型)
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT(缓存时间)
Cookie(客户端暂存服务端的信息)
Date: Tue, 11 Jul 2000 18:23:51 GMT(客户端请求服务端的时间)

15.响应头包含哪些内容
响应(服务端->客户端[response])
HTTP/1.1(响应采用的协议和版本号) 200(状态码) OK(描述信息)
Location: http://www.baidu.com(服务端需要客户端访问的页面路径)
Server:apache tomcat(服务端的Web服务端名)
Content-Encoding: gzip(服务端能够发送压缩编码类型)
Content-Length: 80(服务端发送的压缩数据的长度)
Content-Language: zh-cn(服务端发送的语言类型)
Content-Type: text/html; charset=GB2312(服务端发送的类型及采用的编码方式)
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT(服务端对该资源最后修改的时间)
Refresh: 1;url=http://www.it315.org(服务端要求客户端1秒钟后,刷新,然后访问指定的页面路径)
Content-Disposition: attachment; filename=aaa.zip(服务端要求客户端以下载文件的方式打开该文件)
Transfer-Encoding: chunked(分块传递数据到客户端)
Set-Cookie:SS=Q0=5Lb_nQ; path=/search(服务端发送到客户端的暂存数据)
Expires: -1//3种(服务端禁止客户端缓存页面数据)
Cache-Control: no-cache(服务端禁止客户端缓存页面数据)
Pragma: no-cache(服务端禁止客户端缓存页面数据)
Connection: close(1.0)/(1.1)Keep-Alive(维护客户端和服务端的连接关系)
Date: Tue, 11 Jul 2000 18:23:51 GMT(服务端响应客户端的时间)
在服务器响应客户端的时候,带上Access-Control-Allow-Origin头信息,解决跨域的一种方法。

16.常见的http响应状态码
一些常见的状态码为:
200: 成功
301/302: 请求重定向到另外一个接口
400: 请求语法错误
403:资源没有访问权限
404:资源不存在(有可能是请求url错误或参数不正确)
405:请求方法不被允许(比如接口只允许Post,使用Get请求接口)
500:服务器内部错误(通常是服务器挂了或接口Bug)
502: 网关失效
504: 网关请求超时

17.postman参数化设置如何设置?

全局变量
全局变量是将这个变量设置成整个程序的都可以用,不用去区分环境设置。
1.打开Postman,点击右上角的环境管理按钮
2.选择Global,设置全局变量
3.输入你要设置的变量名和变量,点击Save,进行保存
4.引用全局变量,引用的方法为:{{变量名}}
文档参数化,Postman支持Json文档,txt文档,CSV文档
前提条件: 本文以txt文档为例,在txt里面创建测试数据,存入手机号和密码。多个数据之间用逗号分隔(逗号是英文的)
1.先创建一个Collection集合
2.将请求添加到集合里面
3.设置请求参数的变量
注意:变量名要和txt文档中的变量名一致
4.设置Tests断言
18.postman如何设置断言
打开postman,点击tests,可设置断言

19.postman如何设置全局变量和环境变量
Postman右上角设置图标,选择Manage Environments
点击add
填写全局变量名及key value值
20.接口测试用例设计主要考虑哪些方面
接口用例设计
主要考虑接口的功能,业务,异常,性能,安全进行测试
接口的功能
测试接口的功能正确,确实符合接口文档中对接口的功能描述。

接口的业务逻辑
测试接口的业务依赖,某个接口执行需要依赖上一个接口成功请求的cookie
接口的异常
测试接口的入参参数名异常,参数数据异常。
参数名异常:参数名称错误,参数多一个,参数少一个,参数为空。
参数数据异常:数据类型错误,数据有效值错误,数据为空错误,数据长度错误
入参值校验
参数必填校验,参数长度校验,参数数据类型校验,参数数据有效值校验,参数
是枚举值,要覆盖所有枚举值。参数数据默认值校验,参数与参数组合数据校验
接口请求超时
接口处理大量测试数据,数据库读写能力

接口的性能
测试接口并发数,响应时间,吞吐量,服务资源使用情况(cpu,内存)

接口的安全
测试接口的敏感信息加密
请求时传输的参数数据加密
cookie,session有效时间
重要的信息存session,其他信息存cookie,有效时间设定。

21.fiddler如何抓包
1、选择勾选上https的解密选项。
2、配置https的代理证书
3、将fiddler重启就可以看到可以抓取到https的访问的链接了

22.fiddler如何设断点,为什么设断点
选择fiddler菜单中Rules->Automatic Breakpoints->Before Requests,设置断点,也可以使用快捷键F11;
可以修改发送到服务器的数据包,但是修改前需要拦截,即设置断点。设置断点后,开始拦截接下来所有网页,直到取消断点。

23.fiddlers如何手机代理,抓app包
这个设置需要电脑和手机处于同一个局域网下,一般可以使用同一个wifi。保证手机能够连通电脑。
1、勾选上 “Allow remote computersto connect” ,允许远程设备连接。
2、选择ipconfig获取电脑的Ipv4地址
将 Fiddler 代理服务器的证书导到手机上才能抓这些 APP 的包。
3、打开手机wifi,一直点击wifi处,出现修改wifi网络。
4、打开显示高级选项,依次设置如下值
(导入的过程:打开浏览器,在地址栏中输入代理服务器的 IP 和端口(即电脑的IP加fiddler的端口),会看到一个Fiddler 提供的页面,然后确定安装就好了)
5、在重启一下fiddler就可以看到fiddler抓取手机app中发送包的内容了

24.开发者工具F12如何查看接口请求
1、打开谷歌浏览器,单击F12,打开开发者工具,选择network
2、页面进行相关操作,可以看到network下有很多请求,如下图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1135578.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言重点突破(四)自定义类型详解

前言 本文意在介绍C语言里的常规自定义类型,它是C语言里最重要的概念之一,是我们从简单使用C语言到综合运用必不可少的知识之一,在C语言中具有重要的地位和作用,掌握自定义类型的使用方法和技巧对于写出高质量的C程序是非常重要的…

链表顺序表—优缺点对比

目录 链表: 优点: 缺点: 顺序表: 缺点: 优点: 链表: 优点: 1、任意位置插入删除O(1) 2、按需申请释放空间 缺点: 1、不支持下标随机访问 2、CPU高速缓存命中率…

基于Qt实现的轻量级CAD画图软件

1.界面展示 2.功能展示 3.关于Graphics View绘图架构 由于QPainter画图形,不能实现对图形的选择、编辑、移动等操作,所以我的整个项目是基于Craphics View绘图架构来实现的 3.1 Craphics View (1)Craphics View绘图架构介绍 …

js echarts 词云图

<!DOCTYPE html> <html><head><meta charset"utf-8" /><title>词云图</title><script src"./echarts.js"></script><script src"./echarts-wordcloud.js"></script></head>&…

vivado简单仿真入门

打开软件 创建工程 create project ![在这里插入图片描述](https://img-blog.csdnimg.cn/892eda626d394733920854b71ca8f726.png)先next,保留工程路径&#xff0c;配置环境 配置芯片环境 本次芯片类型 xc7k325tffg900-2 创建之后完整的demo 编写仿真内容 timescale 1ns/1…

一、高效构建Java应用:Maven入门和进阶

一、高效构建Java应用&#xff1a;Maven入门和进阶 目录 一、Maven简介和快速入门 1.1 Maven介绍1.2 Maven主要作用理解1.3 Maven安装和配置 二、基于IDEA的Maven工程创建 2.1梳理Maven工程GAVP属性2.2 Idea构建Maven JavaSE工程2.3 Idea构建Maven JavaEE工程2.4 Maven工程项…

态路小课堂丨InfiniBand AOC有源光缆简介

TARLUZ态路 InfiniBand&#xff08;直译为“无限带宽”技术&#xff0c;缩写为IB&#xff09;是一个用于高性能计算的计算机网络通信标准&#xff0c;它具有极高的吞吐量和极低的延迟&#xff0c;用于计算机与计算机之间的数据互连。InfiniBand也用作服务器与存储系统之间的直…

如何在《阴阳师》游戏中使用单机单窗口软件工具进行防封技巧?

如何在《阴阳师》游戏中使用单机单窗口软件工具进行防封技巧&#xff1f; 首先&#xff0c;定义在《阴阳师》游戏中&#xff0c;使用单机单窗口软件工具进行防封技巧涉及到如何安装和配置软件&#xff0c;以及如何在游戏中应用这些技巧。 我曾经使用过在《阴阳师》游戏中防封…

Fatal error in launcher: Unable to create process using

python在安装库的时候报如下错误&#xff1a; Fatal error in launcher: Unable to create process using "e:\python3.8.8\python.exe" "D:\python3.8.8\Scripts\pip.exe" install qrcode[pil]: ??????????? 除了卸载重装之外&#xff0c;还…

zk-Bench:SNARKs性能对比评估工具

1. 引言 JENS ERNSTBERGER等人2023年论文《zk-Bench: A Toolset for Comparative Evaluation and Performance Benchmarking of SNARKs》。 zk-Bench&#xff0c;定位为&#xff1a; 定位为首个公钥密码学性能评估基准测试框架和工具&#xff0c;重点关注通用ZKP系统的实测评…

JVS规则引擎决策流:轻松解决规则执行中的潜在问题

规则引擎的在线调试功能是指用户在编辑、创建或修改规则时&#xff0c;可以实时地测试这些规则执行的效果&#xff0c;以便及时发现和解决潜在的问题。 接下来我们详细看看在线调试的功能&#xff1a; 1、配置对应的规则&#xff08;这里略过&#xff09;如下图所示&#xff…

蓝桥云课--1024 第 2 场算法双周赛

2-铺地板【算法赛】&#xff08;找规律&#xff09; 一、题目要求 二、思路 &#xff08;1&#xff09;因为每块地砖都是2*3的规格&#xff1a; 1.n<2或者m<2的时候&#xff0c;则不能使用上述规格的瓷砖 No 2.n<3或者m<3的时候&#xff0c;也不能使用上述规格…

项目管理中,如何建立里程碑式管理?

项目进度控制是项目管理中的重要环节&#xff0c;也是最具挑战性的工作之一。在项目管理中&#xff0c;项目进度失控受到多种因素的影响&#xff0c;导致项目失控。 为了解决这个问题&#xff0c;我们可以借鉴在旅途中学到的经验&#xff0c;通过设立里程碑来了解项目进度&am…

macOS 12 Monterey v12.7.1正式版:开启全新的操作系统体验

macOS 12 Monterey已经向所有兼容的Mac设备推出&#xff0c;为您带来了一系列强大的新功能和改进。这个全新的操作系统版本&#xff0c;不仅带来了更流畅的用户体验&#xff0c;还增强了与iOS设备的无缝集成&#xff0c;让您的设备使用更加高效&#xff0c;更加便捷。 macOS 1…

一文说尽零售数据分析指标体系

零售的本质业务模式是通过在各种渠道上吸引客户来购买我们的商品来实现盈利&#xff0c;其实就是客户-渠道-商品&#xff0c;也就是我们常说的“人、场、货”&#xff0c;除此之外还有供应链、财务等起到重要的辅助作用。因此如果要构建起系统化的零售数据分析指标体系&#xf…

压敏电阻有哪些原理?|深圳比创达电子EMC

压敏电阻是一种金属氧化物陶瓷半导体电阻器。它以氧化锌(ZnO)为基料&#xff0c;加入多种(一般5&#xff5e;10种)其它添加剂&#xff0c;经压制成坯体&#xff0c;高温烧结&#xff0c;成为具有晶界特性的多晶半导体陶瓷组件。氧化锌压敏电阻器的微观结构如下图1所示。 氧化锌…

linux 内存检测工具 kfence 详解(二)

系列博文&#xff1a; linux 内存检测工具 kfence 详解(一) linux 内存检测工具 kfence 详解(二) 回上一篇博文 0. 前言 kfence虽然代码不多&#xff0c;但设计的内容、逻辑比较多。为了更加清晰、轻松地理解kfence&#xff0c;笔者将其知识点分两篇博文&#xff1a; 第一篇…

美海军用于情报、监视和侦察的中大型无人系统概述

源自&#xff1a;中国指挥与控制学会 “人工智能技术与咨询” 发布 简 介 1 引 言 2 超大型无人潜航器 图1 波音“回声航行者”无人潜航器 图2 “虎鲸”超大型无人潜航器 3 中型无人水面舰艇 图3 “海鹰”无人水面舰艇 图4 “海上猎人”无人水面舰艇 4 …

今天玩到一个微信钓鱼小游戏,很有趣,居然还能玩萝卜刀

这款钓鱼冠军微信小游戏很有创意&#xff0c;除了传统的钓鱼玩法&#xff0c;居然还融合了黄金矿工的玩法&#xff0c;很不错的想法&#xff0c;而且居然还能玩最近比较火的萝卜刀&#xff0c;快来扫码体验一下吧&#xff0c;或者微信里搜索 《钓鱼冠军》小游戏&#xff0c;认…

Python轮廓追踪【OpenCV形态学操作】

文章目录 概要代码运行结果 概要 一些理论知识 OpenCV形态学操作理论1 OpenCV形态学操作理论2 OpenCV轮廓操作|轮廓类似详解 代码 代码如下&#xff0c;可以直接运行 import cv2 as cv# 定义结构元素 kernel cv.getStructuringElement(cv.MORPH_RECT, (3, 3)) # print kern…