超全整理,软件测试高频面试题(功能/接口/自动化测试-附答案)

news2024/10/7 16:16:35

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

功能测试

1、双十一优惠券当天可用,满100减50,特价商品不能用?
分析需求字面测试点:
双十一优惠券当天可用(边界值);
满100减50(边界值);
特价商品不能用;

UI检查:优惠券金额。不可以用优惠券置灰,有效时间显示;
优惠券状态:已经领取未使用,已领取已使用,已使用,使用后退款;
检查是否能够自动化选择优惠券,并且是否和其他优惠券叠加使用,智能选择最大优惠券,以及优惠券选择切换;

使用优惠券购买商品退货场景 退货金额以及优惠券是否退还;
优惠券是否能重复领取等等;

2、如何区分前后端的bug?
抓包看前端传参很后端返回数据对比;
也可以通过查看后台日志分析;

接口测试

1、谈谈你对http协议的了解?
http协议是一种超文本传输协议,端口是80,特点是无连接无状态能够快速响应,主要是有请求和响应两部分组成

请求:请求行 请求头 请求正文;
常见的请求头 Accept,X-requested-with,user-agent,Content-Type,Cookie;
响应:相应行 响应头 响应正文;
https=http+ssl 端口443;

2、接口测试流程?
拿到api文档(或者通过抓包获取),熟悉接口业务(单接口,接口关联业务),接口地址,鉴权(是否有访问权限:cookies,seeion,token,auth base 签名),入参,出参,错误码

编写接口测试用例以及评审

正例:输入正确的入参,接口返回成功(get、post)

反例:
鉴权反例:鉴权码为空,鉴权码错误。过期
参数反例:使用等价类边界值参数必填参数类型异常参数长度异常
错误码反例:
其他异常场景:接口黑名单 接口调用次数限制 IP受到限制
分页异常:分页传入0 第1页 最后1页
用最少的用例覆盖有效等价类,用最多的用例覆盖无效等价类

我们使用jmeter进行接口测试

使用jmeter+Ant+Jenkins实现接口测试脚本版本控制以及持续集成 并且自动生成报告和发送邮件

3、接口测试cookie session token的区别?

存放及使用:
Cookie 数据存放在客户的浏览器(客户端)上;
Cookie 是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上。

Session 数据放在服务器上;
用户第一次请求服务器的时候,服务器根据用户提交的相关信息,创建对应的 Session,请求返回时将此 Session 的唯一标识信息 SessionID 返回给浏览器,浏览器接收到服务器返回的 SessionID 信息后,会将此信息存入到 Cookie 中。

Token 数据存放在客户端;
是接口测试时的鉴权码,一般情况下登录后才可以获取到 Token,然后在每次请求接口时需要带上 Token 参数。

安全及性能:
Cookie 不是很安全,其他人是可以分析存放在本地的 Cookie 并进行 Cookie 欺骗;Session 更安全,考虑到安全应当使用 Session,在一定时间内保存在服务器上。
可以将登录等重要信息存放为 Session;其他信息需要保存,可以放在 Cookie。

当访问增多,会比较影响服务器的性能,考虑到减轻服务器压力,应当适时选择使用 Cookie。

Token 安全性比 Session 好,因为每一个请求都有签名还能防止监听和重放攻击,而 Session 就必须依赖链路层来保障通讯安全了。

token一般通过appid和secret,密钥来获取

自动化测试

1、给你一个项目你如何在公司实施自动化测试?如何落地?
2、接口自动化测试框架封装里面接口关联如何实现?
3、如何提高框架的拓展性?
4、热加载?
5、get和post请求的区别?

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

不论你的起点如何,只要你心怀梦想,付出努力,坚持不懈,终将迎来属于自己的辉煌时刻。在每一次挫折面前,都请记住:奋斗是我们最好的选择,成功是我们最好的回答!相信自己,勇往直前。

只有经历最黑暗的夜晚,才能迎来最璀璨的黎明;只有不停奋斗,才能拥抱心中的梦想。相信自己的力量,勇往直前,你注定会创造辉煌的未来!

只有坚持不懈的努力,才能迎来成功的曙光;只有心怀梦想的热情,才能创造无限可能。相信自己,勇往直前,奋斗不息,终将收获辉煌的人生。

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

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

相关文章

LCD—STM32液晶显示(4.液晶控制代码讲解)

目录 STM32液晶控制代码讲解 液晶接口封装介绍 使用LCD的配置步骤 内存操作要使用volatile进行修饰 图形绘制实现 绘制矩形 重点补充 STM32液晶控制代码讲解 液晶接口封装介绍 指南者液晶接口原理图 左边DB00—DB15表示液晶屏的数据线引脚,分别对应STM32的F…

使用ppocr突然退出问题

本次使用conda装了一个cuda10.2版本的paddleocr,然后所有的环境检查没问题,使用paddle自带的检查代码,输出提醒paddle可以正常使用: >>> import paddle >>> paddle.utils.run_check() 输出结果提示安装正常 …

零编程经验也能打造精美微信展示小程序的秘诀揭秘

随着微信的普及和发展,微信展示小程序成为了许多企业展示自己形象的重要渠道。那么如何快速地搭建一个精美的微信展示小程序呢?下面就为大家详细介绍一下具体操作步骤。 首先,进入【乔拓云】平台后台。乔拓云是一款非常优秀的小程序开发平台&…

php伪协议(文件包含)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 php伪协议 伪协议详情 php伪协议 文件包含直接读取的是文件,而不是文件源码,所以要想办法读取源码方法。 那么就要涉及到 PHP 伪协议 ph…

LabVIEW开发航空电子设备嵌入式诊断半物理仿真系统

LabVIEW开发航空电子设备嵌入式诊断半物理仿真系统 航电集成系统是现代战争飞机的重要组成部分,包括惯性导航系统、飞行控制系统、机电管理系统和任务计算机等子系统。战机的作战性能与航电系统息息相关,可以说,没有高性能的空电系统&#x…

行业首家!法大大荣获“数据安全管理能力认证(DSMC)”证书

7月11日,法大大获得由中国信息通信研究院(以下简称“中国信通院”)颁发的“数据安全管理能力认证(DSMC)证书”(以下简称“DSMC证书”),成为行业内首家获颁该证书的企业,法…

基于Java+SpringBoot+Vue前后端分离校园管理系统详细设计和实现

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

Spring Cloud Alibaba【创建支付服务生产者、创建服务消费者 、Dubbo和OpenFeign区别 、微服务接入OpenFeign】(二)

目录 分布式服务治理_创建支付服务生产者 分布式服务治理_创建服务消费者 服务调用_Dubbo和OpenFeign区别 服务调用_微服务接入OpenFeign 分布式服务治理_创建支付服务生产者 创建服务提供者工程cloud-provider-payment8001 POM文件引入依赖 <dependencies><…

MP4怎么转换为gif的格式?快试试这两个方法!

想要将MP4视频文件转换为GIF格式&#xff1f;不用担心&#xff0c;本文将为您介绍两种简单易行的方法&#xff1a;记灵在线工具和使用FFmpeg命令行工具。这些方法适用于不同的用户&#xff0c;无论您是喜欢在线工具还是偏向命令行操作&#xff0c;都能找到适合自己的方式。让我…

开源代码分享(8)—大规模电动汽车时空耦合双层优化调度(附matlab代码)

参考文献&#xff1a; [1]He L , Yang J , Yan J , et al. A bi-layer optimization based temporal and spatial scheduling for large-scale electric vehicles[J]. Applied Energy, 2016, 168(apr.15):179-192. DOI:10.1016/j.apenergy.2016.01.089 1.基本原理 1.1摘要 电…

Python模块基础

一、模块 模块可以看成是一堆函数的集合体。 一个py文件内部就可以放一堆函数&#xff0c;因此一个py文件就可以看成一个模块。 如果这个py文件的文件名为module.py&#xff0c;模块名则是module。 1、模块的四种形式 在Python中&#xff0c;总共有以下四种形式的模块&…

MySQL约束和查询

约束和查询 1. 约束1.1 约束类型1.2 常用的约束 2. 查询2.1 聚合查询2.1.1 聚合函数2.1.2 GROUP BY2.1.3 HAVING 2.2 联合查询2.2.1 内连接2.2.2 外连接 2.3 合并查询 1. 约束 1.1 约束类型 NOT NULL - 指示某列不能存储 NULL 值。UNIQUE - 保证某列的每行必须有唯一的值。DE…

TCP四次挥手过程

TCP 断开连接是通过四次挥手方式。 双方都可以主动断开连接&#xff0c;断开连接后主机中的「资源」将被释放&#xff0c; 刚开始双方都处于 establised 状态&#xff0c;假如是客户端先发起关闭请求&#xff0c;过程如下图&#xff1a; 第一次挥手&#xff1a;客户端打算关闭…

C++模拟实现位图和布隆过滤器(哈希)

目录 前言引入&#xff1a; 一、位图 1.1 位图概念 1.2 位图的实现 1.3 位图的应用 二、布隆过滤器 2.1 哈希的弊端 2.2 布隆过滤器概念 2.3 布隆过滤器的插入 2.4 布隆过滤器的查找 2.5 布隆过滤器的删除 2.6 布隆过滤器的模拟实现 2.7 布隆过滤器优缺点 三、…

CSS ::file-selector-button伪元素修改input上传文件按钮的样式

默认样式 修改后的样式 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdev…

HTTP 请求走私漏洞(HTTP Request Smuggling)

一、什么是Http 请求走私漏洞&#xff1f; HTTP请求走私漏洞&#xff08;HTTP Request Smuggling&#xff09;是一种安全漏洞&#xff0c;利用了HTTP协议中请求和响应的解析和处理方式的不一致性。攻击者通过构造特定的恶意请求&#xff0c;以欺骗服务器和代理服务器&#xff0…

微信小程序-地图上的图标计算旋转值朝向经纬度计算

废话不多说&#xff0c;开整 // 参数为寄件人经纬度和收件人经纬度 // 根据寄收件人经纬度弧度π进行rotate旋转计算 const getRotate (po1, po2) > {if (!(po1 && po2)) return 0const lng_a po1.longitudeconst lat_a po1.latitudeconst lng_b po2.longitud…

pg谓词下推分析(一)

谓词下推分析&#xff08;一&#xff09; 本文基于pg13.8。 谓词下推阶段即是把约束条件下推对条件涉及的表上&#xff08;RelOptlnfo&#xff09;&#xff0c;其中同时会涉及到等价类的推导&#xff0c;及建立逻辑连接关系&#xff08;外连接的SpecialJoinInfo结构的创建与设…

apple pencil二代平替笔哪个好用?苹果平板平替笔排行

光是一款Apple Pencil&#xff0c;就卖到了接近一千多块&#xff0c;信息对于很多人来说都觉得太贵了。事实上&#xff0c;由于平替电容笔的性价比也非常高&#xff0c;因此它还是值得一试的。不管是学习&#xff0c;写作&#xff0c;还是绘画&#xff0c;这支平替电容笔&#…

力扣 135. 分发糖果

题目来源&#xff1a;https://leetcode.cn/problems/candy/description/ C题解&#xff08;来源代码随想录&#xff09;&#xff1a; 先从左往右比较&#xff0c;右边孩子评分比左边高就多发1颗糖&#xff0c;否则就只发1颗&#xff1b;再从右往左比较&#xff0c;左边孩子评分…