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

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

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

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

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

Step3.最后调试并执行用例,最后编写接口测试报告

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

2、请简述一下cookie,session以及token的区别

  • cookie数据存放在客户的浏览器上,session数据放在服务器上。而token是接口测试时的鉴权码,一般情况下登陆后才可以获取到token,然后在每次请求接口时需要带上token参数。
  • cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session,session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面应当使用cookie
  • 可以将登陆信息等重要信息存放为session;其他信息需要保存,可以放在cookie

3、接口测试如何设计测试用例

接口测试一般考虑入参形式的变化和接口的业务逻辑,一般设计接口测试用例采用等价类、边界值、场景法居多!

接口测试设计测试用例的思路如下:

step1.接口业务逻辑测试?(正例)

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

step2.模块接口测试?(反例)

  • 模块接口测试是为了保证数据的安全及程序在异常情况下的逻辑的正确性而进行的测试。

  • 模块接口测试的主要包括以下几个方面:

    1)鉴权码token异常(鉴权码为空<没有鉴权码>,错误的鉴权码,过期的鉴权码)。

    2)其他参数异常。

必填项检查

参数的长度、类型、格式异常:

a.常规参数:(数字、字符串、日期)

b.参数长度:6-18位。或身份证、电话的长度。

c.参数类型:数字(精度),字母,中文,带空格的参数,特殊字符。

d.日期格式:日期:年月日,年月日时分秒,日期格式(包括/,-,:等)。

3)错误码异常覆盖。

4)接口测试其他的关注点

    接口有翻页时,页码与页数的异常值测试数据库的增删改查,比如一个post接口操作完成后,通过列表页接口看下新的数据是否和刚才的post一致接口返回的图片地址能否打开,图片尺寸是否符合需求当输出参数有联动性时,需要校验返回两参数的实际结果是否都符合需求。所有列表页接口必须考虑排序值所有功能都要考虑兼容旧版本

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

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

5、谈谈你对HTTP协议的了解

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

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

6、get和post请求有什么区别

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

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

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

7、响应状态码有哪些

1xx:指示信息–表示请求已接受,继续处理

2xx:成功–表示请求已被成功接收、理解、接受

3xx:重定向–要完成请求必须进行更进一步的操作

4xx:客户端错误–请求有语法错误或请求无法实现

5xx:服务器端错误–服务器未能实现合法的请求

8、在接口测试中发现的bug多不多?举几个栗子

这个问题其实回到起来很简单,只要做过接口测试的,总能发现几个BUG吧,把你平常发现的bug说2-3个就可以了。面试官出这个题,主要是想知道你是不是真的做过接口测试,毕竟现在很多小伙伴简历都是写的假的(你要不写估计面试机会都没有,没办法,为了生存,能理解) 比如,提现输入框,在页面上输入负数,肯定是无法提交过去(前端页面会判断金额),如果我不走前端,直接用接口工具发请求,输入一个负数过去。(假设服务端没做提现金额数据判断) 余额=当前余额(100)-提现金额(-100),那么提现-100,余额就变成200了,也就是越提现,余额越大了。

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

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

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

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

10、接口测试后返回结果做对比,一般比对哪些内容

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

11、为什么开展接口测试

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

接口测试非常快速、UI自动化执行一个测试用例10S左右、接口测试用例执行的话,需要的时间是毫秒级的

12、之前在接口测试过程中,使用的工具是什么

postman或jmeter(5.1)

13、之前用过抓包工具没有?如何使用的

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

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

14、json数据是什么,你平时如何解析json数据

一种开发常用的数据报文格式,由键值对和数组两种格式构成。可以通过工具bejson网站等

15、postman你在工作中使用流程是什么样的

编写好用例

在postman先建好url环境变量

根据接口用例所属的模块新建集合管理

在集合中不同模块下录入测试用例

录入测试用例的时候根据预期结果在tests页签中增加断言

导出通过Newman去运行

16、postman中设置环境变量有什么用

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

17、接口测试中关联是什么含义,postman怎么设置关联

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

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

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

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

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

18、postman支持什么类型的协议测试

http和https协议的

19、postman参数化有哪几种方式

内建变量、pre-scripts编写js脚本、批量运行时导入csv或json格式的文件

20、Newman如何执行postman脚本

Newman run 脚本名称 也可以添加参数生成html报表等

21、jmeter之前用的是什么版本?如何安装的

jmeter用的是5.1.1版本,安装如下:

先在电脑上安装jdk1.8或以上的版本,然后从官网下载最新的安装包,解压后,进行环境变量的配置,配置好后即安装完成

22、在项目中如何用jmeter进行接口测试

把线程组数量设置为1,循环次数设置为1

配置好全局变量URL通过配置元件—用户自定义的变量添加

增加配置元件http请求默认值,放置在用户定义的变量之后

添加事务控制器管理和组织测试用例

在事务控制中添加http请求添加测试用例中的接口请求信息

添加对应的断言元件进行断言

23、jmeter中如何设置断言

右击请求—断言—响应断言—响应断言界面输入要检查比对的项,设置好断言后,执行接口测试如果是通过的,查看结果树不会有任何提示,如果断言失败,就会有红色报错。如果接口返回的数据是json数据,也可以添加json断言

24、jmeter中如何实现关联

先从上一个接口中通过正则表达式提取器或jsonpath解析器截取下一个接口需要的参数值保存到变量,然后再写一个接口中通过${变量名}去获取

25、jmeter添加http请求默认值元件有什么作用

添加并设置好后,相当于给所有的http请求取样器都设置了默认值,既不用填写取样器中的比如主机地址、端口、代理等,都可以使用http请求默认值设置的

26、jmeter参数化的方式有哪几种可以实现

配置元件—用户定义的变量元件可以设置全局变量

函数助手对话框中可以选择比如随机字符串、随机日期、随机数字作为参数化

可以使用csv文件作为参数化,通过配置元件中的csv data set config元件进行设置即可

最后: 可以关注公众号:伤心的辣条 ! 进去有许多资料共享!资料都是面试时面试官必问的知识点,也包括了很多测试行业常见知识,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!


好文推荐

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…

什么样的人适合从事软件测试工作?

那个准点下班的人,比我先升职了…

测试岗反复跳槽,跳着跳着就跳没了…

接口测试面试题及参考答案(汇总),真香相关推荐

  1. 2022非常全的接口测试面试题及参考答案-软件测试工程师没有碰到算我输~

    一.前言 接口测试最近几年被炒的火热了,越来越多的测试同行意识到接口测试的重要性.接口测试为什么会如此重要呢? 主要是平常的功能点点点,大家水平都一样,是个人都能点,面试时候如果问你平常在公司怎么测试 ...

  2. 接口测试面试题及参考答案,就等你来看~

    你们公司的接口测试流程是? 接口测试我们是在XX项目做的,主要有XX接口,XX接口,XX接口等. 1.首先是从开发那里拿到API接口文档,了解接口业务.包括接口地址.请求方式,入参.出参,token鉴 ...

  3. 2011年下半年信息系统项目管理师考试下午案例分析试题及参考答案,考试真题

    2011年下半年考试下午案例分析试题及参考答案 试题一 张某是M公司的项目经理,有着丰富的项目管理经验,最近负责某电子商务系统开发的项 目管理工作,该项目经过工作分解后,范围已经明确.为了更好地对项目 ...

  4. 邮储社招Java笔试题_2019年及历年中国邮政储蓄银行社招笔试题和参考答案6套

    2019年及历年中国邮政储蓄银行社招笔试题和参考答案6套 目录: 1.2016年中国邮政储蓄银行社会招聘笔试题和参考答案 2.2019年5月中国邮政储蓄银行社会招聘笔试题和参考答案 3.2019年中国 ...

  5. 2020全网最全的软件测试linux面试题及参考答案,赶紧收藏!

    一.前言: 2020非常全的软件测试linux面试题及参考答案 作为一名软件测试工程师,我相信大部分的人都和Linux打过交道,因为我们的服务器一般都是装的Linux操作系统,包括各种云服务器也都是用 ...

  6. 计算机软件考试预测,2020年计算机软件水平考试信息技术处理员预测试题及参考答案...

    2020年计算机软件水平考试备考正在进行中,为了方便考生及时有效的备考,那么,小编为您精心整理了2020计算机软件水平考试<信息技术处理员>预测试题及参考答案,欢迎大家的关注.如想获取更多 ...

  7. 大学计算机基础实验指导试题,(大学计算机基础实验指导)模拟试题(二)参考答案...

    (大学计算机基础实验指导)模拟试题(二)参考答案 (非计算机专业A卷) 一.填空题(共20分,每空1分) 1.电子管2.分时系统.实时系统3..txt 4.主码 5.实体.参照.用户定义6.同轴电缆. ...

  8. Java实用面试题及参考答案分享

    Java开发人员在面试中少不了会被询问专业上的问题,面试官到底会问什么问题呢,想必小伙伴们一定很好奇吧,接下来小千就带大家一起来看看java常见的面试题. 1.什么是多线程上下文切换? 多线程的上下文 ...

  9. 高中数学40分怎么办_2019年第35届全国高中数学联赛试题及参考答案

    2019年第35届全国高中数学联赛考试已结束,本文收集整理本次数学联赛的试题和参考答案,以供大家了解参考. 本次数学联赛由全国高中数学联赛组委会统一命题,共分为一试和二试. 一试时间为80分钟,包括8 ...

  10. 2011年计算机一级考试题,2011年计算机一级考试模拟试题及参考答案(1)

    2011年计算机一级考试模拟试题及参考答案(1) 来源:Thea发布时间:2011-04-25 [1] 数据111H 的最左边的1 相当于2 的( )次方.[参考答案A] [A] 8 [B] 9 [C ...

最新文章

  1. 东野圭吾最值得看的书排行榜_东野圭吾最值得看的7本作品,我进了坑就再也没出来...
  2. Vue2.x双向数据绑定
  3. 王道考研 计算机网络20 应用层 客户端/服务器C/S模型 P2P模型 DHCP协议 域名解析系统DNS 文件传送协议FTP 万维网 超文本传输协议HTTP
  4. LwIP应用开发笔记之四:LwIP无操作系统TFTP服务器
  5. Linux 内核修复5个高危漏洞
  6. ie不兼容的几个js问题及解决办法
  7. Vant Weapp小程序蹲坑之事件名称问题及解决方案
  8. ubuntu linux修改ip地址命令,永久修改ubuntu系统MAC和IP地址的方法命令
  9. jhu研究生录取 计算机,背景一般获约翰霍普金斯大学JHU信息安全硕士录取
  10. 主流深度学习CTR模型
  11. Debian 11 安装,超详细!
  12. C语言二维数求矩阵每行的最大值与最小值
  13. [从头读历史] 第258节 左传和东周列国志
  14. 浮点数的IEEE745标准表示
  15. c#教程之通过数据绑定修改数据
  16. Paper写作查重需要注意哪些问题?
  17. mysql转sqlserver_mysql迁移sqlserver
  18. ping回显目标主机不可达destination host unreachable的含义及发生情况
  19. 概率论与数理统计--知识点
  20. java图片加气泡文字_图片加气泡文字

热门文章

  1. html点击超链接出现弹窗,如何实现超链接弹窗打开
  2. NEFU计算机组成原理课程设计之乘法器
  3. 毫米波雷达及其应用精炼介绍
  4. 产品读书《定位:有史以来对美国营销影响最大的观念》
  5. Android 中东阿拉伯语适配,看这一篇够了
  6. (转载)软件测试全套教程,软件测试自学线路图
  7. 小米6显示服务器出错,小米6解锁BL显示未连接手机解决办法以及各种小技巧汇总......
  8. python高斯求和函数_选择积分方法—高斯积分
  9. SQL安装步骤及可能遇到的错误
  10. 小杯子微信多开 双开共存版 ios8.0微信版本6.0免费获取了