接口测试面试题,等你来看

2024-09-05 23:12
文章标签 接口 面试题 测试 来看

本文主要是介绍接口测试面试题,等你来看,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.你们公司的接口测试流程是?

接口测试我们是在xx项目做的,主要有xx接口,xx接口等

1.首先是从开发那里拿到API接口文档,了解接口业务、包括接口地址、接口方式、入参、出参、token鉴权,返回格式等信息。

2.然后使用postman或jmeter工具执行接口测试,一般使用Jmeter的步骤是这样的:

首先建立一个线程组;
然后就是新建一个HTTP请求默认值。(输入接口服务器IP和端口);
再新建很多HTTP请求,一个请求一个用例。(输入接口路径,询问方式,参数等);
然后创建断言和查看结果数据。

3.最后调试并执行用力,最后编写接口测试报告。

4.其实我们做接口的时候也碰到过很多的问题,都是自己独立解决的,比如返回值乱码(修改jmeter的配置文件为UTF-8编码方式),比如需要登陆后才能取得token鉴权编码并且这个鉴权码在下面的请求中需要用到(使用正则表达式提取器提取token的值等等。

2.简述cookie、session及token的区别

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

2.cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应到使用seesion,seesion会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面应当使用cookie。

3.可以将登录信息等重要信息存放为session;其他信息需要保存,可以放在coolie。

3.对于加密接口,如何进行测试?

在调用接口的时候,要搞清楚接口的加密方式是什么。

如果是对称加密,要先从开发哪里获取对称密钥,基于对称密钥可以加密请求数据,以及解密响应报文。

如果是非对称加密,先从开发获取服务器公钥和私钥,也要知道当前用户的公钥和私钥信息。以便完成接口的数据加密和解密。

4.接口测试执行中比对数据库吗?

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

5.如何分析一个bug是前端还是后端

这种情况很容易判断,先抓包看请求报文,对着接口文档,看请求报文有没有问题,有问题就是前端发的数据不对;

请求报文没问题,那就看返回报文,返回的数据不对那就是后端开发的问题。


技术交流103-348-2984 资料领取,欢迎加入我们的测试自学交流群,里面有来自华为,字节,阿里,科大讯飞等公司的热心同行,2022,一起抱团取暖。
  • 1
  • 2

6.谈谈你对HTTP协议的了解?

超文本传输协议,端口为80,特点(无记忆功能、快速)是由请求和响应两部分组成请求由请求头、请求行、请求正文组成;响应是由响应头、响应行、响应正文组成,之前我们公司的接口是采用https协议的。

httpshttp+ssl协议端口443面向安全的超文本传输协议。

7.get和post请求有什么区别?

get和post请求都是客户端向服务器提交的一种请求方式;

get是明文传输参数、倾向于请求服务器资源。比如打开网站;

post传输数据不可见,安全性高,倾向于向服务器提交数据,比如注册等。

8.依赖于第三方数据的接口如何进行测试

可以使用SoapUI等工具直接调用第三方数据接口的webservice,通过返回值来查看第三方数据的接口是否调用正常。

也可以利用一些工具来模拟第三方的数据返回,最大限度地降低对第三方数据接口的依赖。

9.接口测试中要注意的测试点有哪些?

接口中返回了图片地址,要手工去进行图片的测试(大小、内容);

接口完成查询功能的时候,数据返回的排序显示;

接口测试的时候,关注参数的默认值、必填项。

10.接口执行测试返回结果比对哪部分?

之前必须要对比的就是返回状态码,其次再去对比返回其它关键内容。

11.做接口测试工作的意义是什么?

这个是开发性题目,面试官主要考察对测试的理解。

根据测试的金字塔模型来说接口测试是测试左移的最方便,最简单的测试,当然最厉害的测试是做白盒测试,这个是在接口测试之前,相对于单元测试。

接口测试属于集成测试、测试介入最早、就越能在项目早期发现问题,其修复问题的成本越低。
接口测试非常快速、UI自动化执行一个测试用例10S左右、接口测试用例执行的话,需要的时间是毫秒级的。
丰富的工具框架与平台,相比UI自动化来说成本更低。

12.用过抓包工具吗?如何使用?

之前在项目中用过fiddler抓包工具进行HTTP协议请求的抓取。

打开fiddler之后,默认浏览器配置了127.0.0.18888端口的代理,在fiddler设置好过滤策略后,打开需要进行抓包的网站进行操作,就可以进行抓包。

13.接口测试中需要哪些注意点?

接口中返回的数据比用字段要看返回的类型是否跟接口文档一致,不然会导致前端出问题。接口中返回了图片地址,要手工去进行图片的测试(大小、内容)
接口完成查询功能的时候,数据返回的排序显示
接口测试的时候,关注参数的默认值、必填项。

14.postman中设置环境变量有什么用?

在之前项目中,接口测试测试的环境有开发环境,测试环境等,为了测试的时候方便,就在postman设置环境变量,到时所有接口都引用该环境变量,这样就不用为了切换环境导致每次都去修改被测系统接口的主机地址;点击右上角环境变量管理按钮-新建环境变量,在脚本中使用{undefined{变量名}}去调用。

15.关联是什么?如何postman设置关联?

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

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

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

使用设置全局变量的代码把取出来的值保存到全局变量;

在下一个接口中,使用{undefined{全局变量}}代替要替换的静态值。

关注即可免费领取一份216页软件测试工程师视频文档资料。

这篇关于接口测试面试题,等你来看的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1140331

相关文章

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

荣耀嵌入式面试题及参考答案

在项目中是否有使用过实时操作系统? 在我参与的项目中,有使用过实时操作系统。实时操作系统(RTOS)在对时间要求严格的应用场景中具有重要作用。我曾参与的一个工业自动化控制项目就采用了实时操作系统。在这个项目中,需要对多个传感器的数据进行实时采集和处理,并根据采集到的数据及时控制执行机构的动作。实时操作系统能够提供确定性的响应时间,确保关键任务在规定的时间内完成。 使用实时操作系统的

一些其他面试题

阿里二面:那你来说说定时任务?单机、分布式、调度框架下的定时任务实现是怎么完成的?懵了。。_哔哩哔哩_bilibili 1.定时算法 累加,第二层每一个格子是第一层的总时间400 ms= 20 * 20ms 2.MQ消息丢失 阿里二面:高并发场景下引进消息队列有什么问题?如何保证消息只被消费一次?真是捏了一把汗。。_哔哩哔哩_bilibili 发送消息失败

Java 后端接口入参 - 联合前端VUE 使用AES完成入参出参加密解密

加密效果: 解密后的数据就是正常数据: 后端:使用的是spring-cloud框架,在gateway模块进行操作 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>30.0-jre</version></dependency> 编写一个AES加密

zookeeper相关面试题

zk的数据同步原理?zk的集群会出现脑裂的问题吗?zk的watch机制实现原理?zk是如何保证一致性的?zk的快速选举leader原理?zk的典型应用场景zk中一个客户端修改了数据之后,其他客户端能够马上获取到最新的数据吗?zk对事物的支持? 1. zk的数据同步原理? zk的数据同步过程中,通过以下三个参数来选择对应的数据同步方式 peerLastZxid:Learner服务器(Follo

java常用面试题-基础知识分享

什么是Java? Java是一种高级编程语言,旨在提供跨平台的解决方案。它是一种面向对象的语言,具有简单、结构化、可移植、可靠、安全等特点。 Java的主要特点是什么? Java的主要特点包括: 简单性:Java的语法相对简单,易于学习和使用。面向对象:Java是一种完全面向对象的语言,支持封装、继承和多态。跨平台性:Java的程序可以在不同的操作系统上运行,称为"Write once,

java线程深度解析(一)——java new 接口?匿名内部类给你答案

http://blog.csdn.net/daybreak1209/article/details/51305477 一、内部类 1、内部类初识 一般,一个类里主要包含类的方法和属性,但在Java中还提出在类中继续定义类(内部类)的概念。 内部类的定义:类的内部定义类 先来看一个实例 [html]  view plain copy pu