范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

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

  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 文件里。

iPhone怎么防止骚扰电话?不用再羡慕安卓用户了如果你以前用的安卓手机,换成iPhone之后你会发现,骚扰电话怎么明显多起来了?其实并不是iPhone用户骚扰电话就多,而是因为各大安卓手机的安全管家帮你拦截了大部分的骚扰电话,可特斯拉的周边产品,比茅台还难抢,看马斯克的杂货铺有多赚钱1hr说到特斯拉,我们都想到畅销车。可是,你知道吗,特斯拉的周边产品有多好卖?根据官方报道,马斯克这个商业天才,已经把杂货铺做到了极致。特斯拉的周边产品,品类之全,基本上可以满足特iPhone奇葩新Bug拍人像时人头直接消失要说现如今销量最好的智能手机,自然非苹果公司的iPhone莫属。尽管iPhone系列一年才更新一次,但每次新款iPhone推出后,都会引发一阵购机热潮,去年的iPhone13当然也永鼎股份成功中标远景能源两项目新能源战略加速据相关消息,日前,永鼎股份旗下金亭汽车线束(苏州)有限公司(以下简称金亭线束)成功中标远景能源2022年度储能液冷控制线束项目。此外,永鼎股份光跳纤产品在远景能源光纤跳线2022年iQOO9(12GB256GB5G版)参数大全iQOO9iQOO9(12GB256GB5G版)价格暂无价格上市时间2022年屏幕尺寸6。56英寸分辨率23761080像素屏幕像素密度398ppi屏幕占比92。76屏幕技术120c入门教程(五)foreach循环while和for循环可以满足80场景,但是对于没有下标索引的集合无法实现元素的遍历,比如字典表Dictionary。这时需要使用foreach循环,不管是数组还是集合,有无下标索电脑c盘删除几个文件夹内容轻松腾出大量空间电脑C盘是最关键的盘符,因为操作系统存放在这里,如果C盘空间满了会影响正常使用,之前也有文章讲过怎么清理C盘空间,今天再来讲一个清理C盘空间的方法,就是删除几个文件夹,既不影响操作Vite入门教程下一代前端开发与构建工具特点极速的服务启动,使用原生ESM文件,无需打包!轻量快速的热重载,无论应用程序大小如何,都始终极快的模块热重载(HMR)丰富的功能,对TypeScriptJSXCSS等支持开箱即人生游戏第12天参观京东智谷4。0工厂与MAYA新工厂,放大梦想人生游戏的第12天,我在挑战第一关行动。任务清单5件,完成5件完成行动率100,满意程度85忙碌了一周,周日彻底放慢了脚步,睡到自然醒。除了日常的读IENGLISH30多分钟与百词普通人需要专业视频创作软件吗?随着互联网的飞速发展,新基建带来了大的带宽更快的网络,上网费用也日渐降低,随之而来的就是视频平台的快速发展。相较于此前互联网上单一的的以文字图片进行的交流方式,视频更能够满足人们休曝华为有望推出自研内核浏览器,华为Mate40让路新机跌至白菜价近日,有消息称华为可能率先推出自己的浏览器内核。根据长安数码君发布的微博,华为浏览器高级经理透露,华为浏览器可能在两年左右上市,这个消息当然令人振奋。值得一提的是,由于华为Mate
京东的二手手机靠谱吗?感谢您的阅读!京东的二手手机靠谱吗?在这里,我和大家分享一下京东二手手机可能存在的优点和缺点。京东二手手机的优点是在于它能够有一定的质量保证,并且有一定的质量的时间的保证。比如说它AirTag成作案工具,苹果宣布出手打击苹果宣布对其蓝牙追踪器AirTag的工作方式作出几项调整,原因是其被用于了跟踪偷车在内的疑似犯罪行为。苹果称,公司将更新iPhone和AirTag软件,在安装过程中显示一条信息在世如果发现一个低等外星文明,人类会怎样做?假设现在发现了一个低等的外星文明(不要吐糟是怎么发现的),你觉得人类会怎么对待?你觉得应该怎么对待?大概有以下几种可能性吧(不一定相互排斥)1。直接消灭。按照三体的理论,不留后患。打破国外垄断!高瓴重仓的微创图迈腔镜手术机器人获批上市2022年2月10日,获高瓴CPE等知名投资机构押注的微创医疗机器人(集团)自主研发的图迈(Toumai)腔镜手术机器人日前获得国家药品监督管理局上市批准。这是目前第一款也是唯一一融资丨睿触科技完成近亿元A轮融资,布局手术机器人多管线产品开发创业邦获悉,2月10日,手术机器人公司上海睿触科技有限公司(以下简称睿触科技)宣布完成近亿元人民币A轮融资,投资方为疌盛金瑞基金乾融创禾友达创投。溪林投资担任长期独家及本轮交易的财中金公司激光雷达快速发展半导体激光器酝酿新机e公司讯,中金公司研报认为,车载激光雷达放量,有望推动半导体激光器市场快速增长。半导体激光器行业的市场扩容依赖于下游核心场景的快速放量。往前看,半导体激光器市场增长动力来自1)激光微软CEO谈收购动暴和元宇宙希望建立下一个互联网据外媒报道,微软CEO萨提亚纳德拉表示,微软计划收购动视暴雪的动机是希望建立下一个互联网。该消息来自近日萨提亚纳德拉接受的采访,其中,他透露了微软对元宇宙的愿景。他说道元宇宙本质上探析元宇宙,应用的未来元宇宙是一种沉浸式的互联网虚拟现实体验,它使用区块链技术和NFT来支付和拥有在线物品。例如,当你在游戏中进行购买时,你实际上拥有该物品,并可以自由持有交易或出售。SANDBOXTh元宇宙笔记82022世界元宇宙大会5月在京举行今年,元宇宙能否成为新的增长引擎?未来,元宇宙将何去何从?现在,企业如何参与挣钱?这三个问题已成为众多业界人士普通群众的核心关注点。众所周知,AIVRARMRXR区块链云计算物联网北京今年将新增推广应用800辆以上燃料电池汽车原标题北京今年将新增推广应用800辆以上燃料电池汽车2022北京新闻中心今天(2月10日)举行北京市两区建设专场新闻发布会。记者从会上获悉,到今年年底,北京计划新增推广应用800辆特斯拉CEO马斯克入选美国国家工程院2021年增选院士特斯拉CEO马斯克入选美国国家工程院2021年增选院士财联社2月10日电,美国工程院2月9日发布2021年度国家工程院增补院士名单,此次共有111名院士及22名外籍院士入选。其中,