看完这个接口测试面试题及参考答案,offer拿到手软
ninehua 2025-01-12 17:36 37 浏览
1、你们公司的接口测试流程是?
接口测试我们是在XX项目做的,主要有XX接口,XX接口,XX接口等。
1、首先是从开发那里拿到API接口文档,了解接口业务、包括接口地址、请求方式,入参、出参,token鉴权,返回格式等信息。
2、然后使用Postman或Jmeter工具执行接口测试,一般使用Jmeter的步骤是这样的:
- 首先新建一个线程组;
- 然后就是新建一个HTTP请求默认值。(输入接口服务器IP和端口);
- 再新建很多HTTP请求,一个请求一个用例。(输入接口路径,访问方式,参数等);
- 然后创建断言和查看结果树。
3、最后调试并执行用例,最后编写接口测试报告。
4、其实我们做接口的时候也碰到了蛮多的问题,都是自己独立解决的,比如返回值乱码(修改jmeter的配置文件为UTF-8编码方式),比如需要登录后才能取得token鉴权码并且这个鉴权码在下面的请求中需要用到(使用正则表达式提取器提取token的值等。
2、简述cookie、session及token的区别
- cookie数据存放在客户的浏览器上,session数据放在服务器上。而token是接口测试时的鉴权码,一般情况下登陆后才可以获取到token,然后在每次请求接口时需要带上token参数。
- cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session,session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面应当使用cookie。
- 可以将登陆信息等重要信息存放为session;其他信息需要保存,可以放在cookie。
3、接口测试执行中比对数据库吗?
肯定,因为接口返回值的数据来源于数据库,接口对数据的操作还要进行深层次的数据库检查!
4、谈谈你对HTTP协议的了解?
超文本传输协议,端口为80,特点(无记忆功能、快速)是由请求和响应两部分组成请求由请求头、请求行、请求正文组成;响应是由响应头、响应行、响应正文组成,之前我们公司的接口是采用https协议的。
httpshttp+ssl协议端口443面向安全的超文本传输协议。
5、get和post请求有什么区别?
get和post请求都是客户端向服务器提交的一种请求方式;
get是明文传输参数、倾向于请求服务器资源。比如打开网站;
post传输数据不可见,安全性高,倾向于向服务器提交数据,比如注册等。
6、响应状态码有哪些?
1xx:指示信息--表示请求已接受,继续处理;
2xx:成功--表示请求已被成功接收、理解、接受;
3xx:重定向--要完成请求必须进行更进一步的操作;
4xx:客户端错误--请求有语法错误或请求无法实现;
5xx:服务器端错误--服务器未能实现合法的请求。
7、接口测试中要注意的测试点有哪些?
- 接口中返回了图片地址,要手工去进行图片的测试(大小、内容);
- 接口完成查询功能的时候,数据返回的排序显示;
- 接口测试的时候,关注参数的默认值、必填项。
8、接口执行测试返回结果比对哪部分?
之前必须要对比的就是返回状态码,其次再去对比返回其它关键内容。
9、为什么开展接口测试?
- 接口测试属于集成测试、测试介入越早、就越能在项目早期发现问题,其修复问题的成本越低;
- 接口测试非常快速、UI自动化执行一个测试用例10S左右、接口测试用例执行的话,需要的时间是毫秒级的。
10、用过抓包工具吗?如何使用?
之前在项目中用过fiddler抓包工具进行HTTP协议请求的抓取。
打开fiddler之后,默认浏览器配置了127.0.0.18888端口的代理,在fiddler设置好过滤策略后,打开需要进行抓包的网站进行操作,就可以进行抓包。
11、postman使用流程是什么?
- 编写好用例;
- 在postman先建好url环境变量;
- 根据接口用例所属的模块新建集合管理;
- 在集合中不同模块下录入测试用例;
- 录入测试用例的时候根据预期结果在tests页签中增加断言;
- 导出通过Newman去运行。
12、postman中设置环境变量有什么用?
在之前项目中,接口测试测试的环境有开发环境,测试环境等,为了测试的时候方便,就在postman设置环境变量,到时所有接口都引用该环境变量,这样就不用为了切换环境导致每次都去修改被测系统接口的主机地址;点击右上角环境变量管理按钮-新建环境变量,在脚本中使用{undefined{变量名}}去调用。
13、关联是什么?如何postman设置关联?
关联就是把上一个接口返回值的部分截取出来,作为下一个接口的参数,能让接口串联运行。
在postman中设置关联的步骤如下:
- 先通过正则表达式提取的方式或json取值的方式把下一个接口需要的信息从上一个接口截取出来;
- 使用设置全局变量的代码把取出来的值保存到全局变量;
- 在下一个接口中,使用{undefined{全局变量}}代替要替换的静态值。
14、postman参数化有哪几种方式?
内建变量、pre-scripts编写js脚本、批量运行时导入csv或json格式的文件。
15、jmeter用的是什么版本?如何安装?
jmeter用的是5.1.1版本,安装如下:
先在电脑上安装jdk1.8或以上的版本,然后从官网下载最新的安装包,解压后,进行环境变量的配置,配置好后即安装完成
16、在项目中如何用jmeter进行接口测试?
- 把线程组数量设置为1,循环次数设置为1;
- 配置好全局变量URL通过配置元件---用户自定义的变量添加;
- 增加配置元件http请求默认值,放置在用户定义的变量之后;
- 添加事务控制器管理和组织测试用例;
- 在事务控制中添加http请求添加测试用例中的接口请求信息;
- 添加对应的断言元件进行断言。
17、jmeter中如何设置断言?
右击请求---断言---响应断言---响应断言界面输入要检查比对的项,设置好断言后,执行接口测试如果是通过的,查看结果树不会有任何提示,如果断言失败,就会有红色报错。如果接口返回的数据是json数据,也可以添加json断言。
18、jmeter中如何实现关联?
先从上一个接口中通过正则表达式提取器或json path解析器截取下一个接口需要的参数值保存到变量,然后在写一个接口中通过${变量名}去获取。
19、jmeter添加http请求默认值元件作用?
添加并设置好后,相当于给所有的http请求取样器都设置了默认值,既不用填写取样器中的比如主机地址、端口、代理等,都可以使用http请求默认值设置的。
20、jmeter参数化方式有哪几种可以实现?
- 配置元件---用户定义的变量元件可以设置全局变量;
- 函数助手对话框中可以选择比如随机字符串、随机日期、随机数字作为参数化;
- 可以使用csv文件作为参数化,通过配置元件中的csv dataset config元件进行设置即可。
感谢每一个认真阅读我文章的人!!!
如果下面这些资料用得到的话可以直接拿走:
1、自学开发或者测试必备的完整项目源码与环境
2、测试工作中所有模板(测试计划、测试用例、测试报告等)
3、软件测试经典面试题
4、Python/Java自动化测试实战.pdf
5、Jmeter/postman接口测试全套视频获取
我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。需要的评论区留言谢谢
相关推荐
- 苹果发布iTunes 12.3更新下载:支持iOS9正式版双重验证
-
IT之家讯9月17日凌晨,苹果如约正式推送了iOS9正式版固件更新,不过watchOS2却因为出现了某些关键bug被延期推送。同时,苹果也将iTunes更新至12.3版本,正式支持iOS9的双重验...
- 别费事了,图文教你用 iTunes 轻松升级 iOS 8
-
本文是一年前《升级/恢复iOS7图文教程》的2.0版本,其实本文所描述无论是操作流程还是方法都与之类似,你完全可以举一反三,融会贯通的用在iOS8的升级上。关于系统升级的重点设备要...
- 苹果更新iTunes到12.4版本 界面发生改变
-
在发布iOS9.3.2正式版更新的同时,还带来了新版的iTunes12.4,这个版本的iTunes改动最大的莫过于导航界面。苹果方面表示,改动后的导航栏有助于用户在不同内容之间更为便捷地切换。更新到i...
- iTunes商店走过13年 它不再只专注于音乐
-
iTunes改变了音乐行业2003年4月28日,苹果开始了一场全新的革命,史蒂夫·乔布斯骄傲地在发布会上宣布iTunesMusicStore(音乐商店)正式开张。或许他早就意识到了...
- 苹果更新日iTunes也升至 12.3.1 提升稳定性
-
威锋网讯,今天又是苹果的更新日,除了iOS、OSX和watchOS之外,苹果还对iTunes进行了更新。在当地时间21日,苹果将iTunes更新到了12.3.1。和今天更新的其...
- iTunes怎么用?iTunes最详尽使用教程
-
大家在平常使用iTunes时是不是往往感到很困惑呢?新版的iTunes又该怎么用呢?今天我们就给大家带来最新的iTunes使用教程,让大家再也不会为了“iTunes怎么用”这样的问题而烦恼。说到iTu...
- 一代传奇落幕,iTunes不再是苹果的宠儿
-
还有不到24小时,苹果一年一度的WWDC就将在美国旧金山举行。作为2019年的苹果全球开发者的盛宴,软件也势必将依旧是此次活动的核心,而包括全新的iOS13、macOS10.15、watchOS...
- 修复提权漏洞,苹果推荐用户尽快升级PC版iTunes至12.12.9
-
IT之家6月2日消息,苹果官方于5月23日发布适用于Win10、Win11的iTunes12.12.9版本更新,重点修复了提权漏洞,并推荐用户尽快安装。根据苹果官网发布的新闻...
- iTunes12正式版更新,使用更加轻松惬意
-
IT之家(www.ithome.com):iTunes12正式版更新,使用更加轻松惬意此次iTunes在iPad发布会过后版本号正式更新到12,本次更新包含多项设计和性能方面的改进,使用iTunes从...
- 只需要简单几步,普通电脑也可以安装iTunes,尤其是Windows系统
-
随着苹果电脑、手机的出现,人们习惯了使用苹果系统,但却对Windows系列电脑的使用方法缺乏了解,以iTunes为例,很多用户以为只有苹果电脑或手机可以安装该软件,但实际上并不是这样,本期文章教各位...
- 古典也流行 苹果推送iTunes新版本12.3.2
-
Yesky天极新闻2015-12-1211:04:33【Yesky新闻频道消息】苹果近日更新了iTunes到12.3.2版本。苹果为iTunes增加了与iOS9.2AppleMusic相同...
- ipad系统太老无法更新怎么办(ipad系统版本太低更新不了)
-
如果你的ipad已经使用了很多年,可能会遇到一个问题:系统无法更新。这是因为苹果每年都会推出新的iOS或iPadOS版本,但并不是所有的ipad都能支持最新的系统。苹果会根据ipad的硬件性能和用户体...
- 苹果发布Win10/Win11版iTunes 12.12.8更新
-
IT之家3月30日消息,苹果于今天发布了适用于Windows平台的iTunes12.12.8版本更新,主要提升了安全性,并添加了对某些新设备的支持。苹果上次更新是在2022年1...
- iTunes 12.3.2更新:提升古典音乐浏览体验
-
这次更新为OSX版iTunes带来了与iOS9.2正式版AppleMusic相同的功能。威锋网12月13日消息数天前苹果推出了iOS9.2正式版,其中预装了最新的...
- 产品线更丰富,电动汽车制造商Rivian推出R1S SUV和R1T皮卡
-
来源:环球网【环球网科技综合报道】6月7日消息,电动汽车制造商Rivian近日宣布推出第二代旗舰车型——R1SSUV和R1T皮卡,进一步丰富了其产品线。从性能层面来看,得益于Rivian设计和...