2024-软件测试工程师面试题,面试前一天刷效果更佳。

news2025/1/16 0:47:38
  1. bug的定义,bug的周期
  • 软件bug是指软件程序的漏洞和缺陷,测试工程师或用户所发现和提出的软件可改进的细节、或与需求文档存在差异的功能实现等
  • 生命周期中缺陷状态:新建-->指派-->已解决-->待验-->关闭
    • 发现BUG-->提交BUG-->指派BUG-->研发确认BUG-->研发去修复BUG-->回归验证BUG-->是否通过验证-->关闭BUG

2. 怎么判断是前端bug还是后端bug

  • 界面相关,排版错乱,文案错误等问题都属于前端bug
    • 出现样式问题的都是css的bug
    • 出现文本问题的都是html的bug
    • 出现交互有问题的都是js的bug
  • 功能相关,抓包分析,从接口 请求url 参数 接口响应来分析
    • 未发送请求,属于前端bug
    • 接口请求url错误,传参错误,属于前端bug
    • 接口返回数据错误,属于后端bug
  • 性能相关
    • 页面加载慢或者提交表单慢,抓包查看请求耗时,如果耗时长,就属于后端bug

3. postman接口测试怎么做?

  • 接口测试就和普通功能测试没什么区别,区别就是功能测试是在页面上输入值,提交数据看结果,而接口测试没有页面,通过接口规范文档上的调用地址,请求参数,拼接报文,然后发送请求,检查返回结果。
  • 步骤
    • 打开postman,填写接口信息
      • 结合测试用例,组合变换参数信息后,查看返回的json数据与prd(产品需求文档)是否一致
    • 功能测试
      • 单接口测试
        • 正常参数
          • 全部必填参数
          • 全部参数(必填+非必填)
          • 全部参数(必填+ 部分非必填)
        • 异常参数
          • 数据异常:长度,类型是否为空,不满足业务等
          • 参数异常:多参,少参,无参,错误参数(password写成pass)等
      • 多接口测试(业务场景测试,用在冒烟测试里)

4. 测试报告的组成

  • 概述(包括项目背景,需求分析)
  • 测试时间,测试环境
  • 测试过程(评审记录,测试范围,测试用例)
  • 功能实现清单(列出是否已经按照测试计划实现功能)
  • 缺陷统计(测试缺陷统计,测试用例执行情况统计)
  • 测试统计情况(资源统计,执行情况,问题统计,问题列表,遗留的问题)
  • 测试总结(测试结论(是否通过),测试内容,测试用例的覆盖程度,bug的解决程序)
  • 测试风险

5. 测试用例设计方法

  • 黑盒(等价类划分,边界分析,因果图和错误猜测)
  • 白盒(逻辑覆盖,循环测试路径选择,基本路径测试)

6. 软件测试通过的标准是什么

  • 测试用例完全执行,测试用例覆盖到所有的测试点,并且缺陷的密度达到客户的需求

7. 什么是bug?

  • 没有实现的功能
  • 完成了用户需求的功能,但是运行时会出现一些功能或性能上的问题
  • 实现了用户不需求的多余功能

8. 简述软件测试的流程

  • 阅读相关技术文档
  • 参加需求评审会议
  • 根据最终确定的需求文档编写测试计划
  • 编写测试用例
  • 用例评审
  • 开发提交代码
  • 执行测试用例,记录发现的问题
  • 验证bug与回归测试
  • 编写测试报告
  • 产品上线

9. 自动化测试脚本开发的主要步骤

  • 通过某些方式定位到我们要执行的对象,目标
  • 对这个对象进行什么操作
  • 通过操作对定位到的对象赋值
  • 添加断言操作

10. 什么是冒烟测试

  • 冒烟测试就是在每日构建版本后,对系统的基本功能进行简单的测试,这种测试强调程序的主要功能进行的验证,而不会对具体功能进行更深入的测试

11. app测试和web测试不同的地方

  • web项目是b/s架构,基于浏览器的,web测试只要更新了服务器端,客户端就会同步更新
  • app项目,c/s架构, 必须要有客户端,app修改了服务端,客户端用户所有核心版本都需要进行回归测试
  • web项目需要监测响应时间,cpu ,内存
  • app项目除了监测响应时间,cpu,内存外,还需要监测流量,电量
  • web基于浏览器,一般选择不同浏览器内核进行测试,app必须依赖于手机或者pad,分辨率,尺寸,设备系统

12. 一条bug记录都包含了哪些内容,如何提交高质量的bug记录

  • 一条bug记录最基本应包含:编号,bug所属模块,bug描述,bug级别,发现日期,发现人,修改日期,修改人,修改方法,回归结果
  • 要有效的发现 Bug 需参考需求以及详细设计等前期文档设计出高效的测试用例,然后严格执行测试用例,对发现的问题要充分确认肯定,然后再向外发布如此才能提高提交 Bug 的质量。

13. 如何使用jmeter进行压力测试

  • 添加请求
  • 线程组配置-----设置线程组--------设置循环次数--------------设置压测持续时间
  • 添加聚合报告
  • 执行分析结果----主要看:请求数,响应时间(越小越好),tps(服务器每秒钟处理的请求数,数值越大越好)

14. 自动化和手动测试的区别

  • 测试效率不同
    • 完成同等数目的测试,启动自动化速度更快,手工测试则需要消费更多的时间,但是自动化测试的脚本开发比用例开发耗时长,包括编写脚本、调试脚本、维护脚本,而手工测试虽然也要对测试用例进行撰写、评审、修订,由于用例编写更多为自然语言,时间上会少
  • 执行可靠性不同
    • 自动化测试中可靠的按脚本执行,后续定位,复现有明确的配置路径可寻,而手工测试往往会因为自己的判断导致测试出错,并且在测出来的问题上有一部分是不能复现的。但是自动化的稳定来源于其死板,而人的智慧体现在思维的跳跃,跳跃的思维也会导致后期不易定位。
  • 覆盖率不同
    • 在同等时间内,启动自动化测试能够覆盖更多的功能,而手工测试只能覆盖小部分功能。但是自动化测试适合回归测试,开发中的功能不划算。对于开发中功能,需求或者实现的更改,都会导致自动化脚本的变更,开发中的功能更适合手工测试。

15. 项目是如何进行测试的

  • 了解被测系统,被测功能和各个功能的业务逻辑
  • 分析需求文档,整理测试点
  • 测试方法设计,将测试方法用到项目中
  • 编写测试用例
  • 拿到被测软件后,执行测试,提交bug,有效的进行回归测试
  • 测试总结

16. mysql 有AB两个表,A表用户表,B表角色表,C表是关系表,查询用户都是什么角色

17. mysql 查询成绩倒数第三的同学

  • limit 返回查询条件的前几条或者中间某几行的数据,可接收两个参数, 第一个参数表示从第几行数据开始查,第二个参数表示查几条数据。注:初始记录行的偏移量是 0
  • 用法
    • SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15
    • SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.
    • SELECT * FROM table LIMIT 5; //检索前 5 个记录行 相当于limit 0,5

18. 怎么测一个鼠标

  • 界面
    • 形状,大小 是否符合要求
    • 是否有灯光显示
    • 是否有产品logo显示,开关是否显示标识
  • 功能
    • 带线鼠标的话,连接在机箱上是否能使用,连接在笔记本上是否能使用
    • 蓝牙鼠标的话,不插入连接器是否能使用;电脑打开蓝牙,是否能连接成功;鼠标没电,是否还能继续使用
    • 鼠标左键是否能点击,点击后页面是否有反应
    • 鼠标左键是否能选中文本
    • 鼠标右键,是否显示刷新,复制等功能
    • 鼠标滚轴是否可以滑动页面
    • 鼠标点住左键是否可以拖动文件
    • 鼠标是否可以双击
  • 性能
    • 鼠标左右键最多能够使用多久
    • 电池可以支持多久
    • 鼠标摔了之后是否还能正常使用

19. 当开发说这不是一个bug的时候,如何应付

  • 开发人员说不是bug,有两种情况
    • 需求没有明确,这个时候可以找到产品人员进行确认,需不需要改动
    • 这种情况不可能发生,所以不需要修改。这个时候,我可以先尽可能的说出是BUG的依据是什么?如果被用户发现或出了问题,会有什么不良结果?程序员可能会给你很多理由,你可以对他的解释进行反驳。如果还是不行,那我可以给这个问题提出来,跟开发经理和测试经理进行确认,如果要修改就改,如果不要修改就不改。其实有些真的不是bug,我也只是建议的方式写进TD中,如果开发人员不修改也没有大问题。如果确定是bug的话,一定要坚持自己的立场,让问题得到最后的确认。

20. 软件测试有哪些类型

  • 测试类型:功能测试,性能测试,界面测试,UI测试、接口测试、安全测试、兼容性测试、易用性测试、压力测试、负载测试

21. 功能测试包含哪些测试

===================== 后续还会增加

  总结

如果你对此文有任何疑问,如果你也需要接口项目实战,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入我们,加入方式在文章的最后面

  自动化测试相关教程推荐:

2023最新自动化测试自学教程新手小白26天入门最详细教程,目前已有300多人通过学习这套教程入职大厂!!_哔哩哔哩_bilibili

2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibili

测试开发相关教程推荐

2023全网最牛,字节测试开发大佬现场教学,从零开始教你成为年薪百万的测试开发工程师_哔哩哔哩_bilibili

postman/jmeter/fiddler测试工具类教程推荐

讲的最详细JMeter接口测试/接口自动化测试项目实战合集教程,学jmeter接口测试一套教程就够了!!_哔哩哔哩_bilibili

2023自学fiddler抓包,请一定要看完【如何1天学会fiddler抓包】的全网最详细视频教程!!_哔哩哔哩_bilibili

2023全网封神,B站讲的最详细的Postman接口测试实战教学,小白都能学会_哔哩哔哩_bilibili

  总结:

 光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

测试开发视频教程、学习笔记领取传送门!!

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

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

相关文章

案例260:基于微信小程序的签到系统的设计与实现

文末获取源码 开发语言:Java 框架:springboot JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder …

重磅发布|博睿数据2023年度精选案例集—— IT运维之光

当前,数字经济已经成为全球经济增长的重要引擎。随着新技术的飞速发展,企业数字化转型机遇不断涌现,而稳定、安全、可靠的IT运维环境是实现数字化转型的关键。 在此背景下,AIOps 智能运维正成为企业高效管控种类繁多数量庞大的物…

听说!Art-DAQ实现了与LabVIEW的无缝连接

前言 阿尔泰科技与时俱进,推出Art-DAQ程序,与LabVIEW无缝连接,形成系统平台体系。持续不断地获取行业新技术,完善自主知识产权产品的研发,为客户提供优质服务。 什么是Labview? 从产品的角度来看&#x…

电话号码的字母组合[中等]

一、题目 给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意1不对应任何字母。 示例 1: 输入:digits "23" 输出&am…

java itext5 生成PDF并填充数据导出

java itext5 生成PDF并填充数据导出 依赖**文本勾选框****页眉**&#xff0c;**页脚****图片**实际图 主要功能有文本勾选框&#xff0c;页眉&#xff0c;页脚&#xff0c;图片等功能。肯定没有专业软件画的好看&#xff0c;只是一点儿方法。仅供参考。 依赖 <!--pdf-->&…

CAS-手写自旋锁

CAS与自旋锁&#xff0c;借鉴CAS思想 什么是自旋锁&#xff1f; CAS是实现自旋锁的基础&#xff0c;CAS利用CPU指令保证了操作的原子性&#xff0c;以达到锁的效果&#xff0c;至于自旋 锁---字面意思自己旋转。是指尝试获取锁的线程不会立即阻塞&#xff0c;而是采用循环的…

【头歌实训】kafka-入门篇

文章目录 第1关&#xff1a;kafka - 初体验任务描述相关知识Kafka 简述Kafka 应用场景Kafka 架构组件kafka 常用命令 编程要求测试说明答案代码 第2关&#xff1a;生产者 &#xff08;Producer &#xff09; - 简单模式任务描述相关知识Producer 简单模式Producer 的开发步骤Ka…

庙算兵棋推演AI开发初探(2-编写策略(上))

开始研读step()函数的编写方法。 这个是图灵网提供了一些基础的ai代码下载&#xff08;浏览需要注册&#xff0c;下载需要审批&#xff09;。 AI开发中心-人机对抗智能 (ia.ac.cn)http://turingai.ia.ac.cn/ai_center/show 一、代码研读(BaseAgent类) 1.step函数 这段代码定…

快速上手makefile自动化构建工具

makefile自动化构建工具 文章目录 makefile自动化构建工具 makefile背景 简单认识makefile 依赖关系与依赖方法 生成项目 清理项目 ACM时间 语法补充 .PHONY修饰 特殊符号替换 Makefile的推导过程 总结 前言&#xff1a; 在windows下&#xff0c;很多东西都是编译器直接帮你做…

Java EasyExcel 导入代码

Java EasyExcel 导入代码 导入方法 /*** 仓库库位导入** param req* param res* param files* throws Exception*/RequestMapping(value {"/import/line_store_locs"}, method {RequestMethod.POST})ResponseBodypublic void importStoreLoc(HttpServletRequest …

关于Redis面试题

前言 之前为了准备面试&#xff0c;收集整理了一些面试题。 本篇文章更新时间2023年12月27日。 最新的内容可以看我的原文&#xff1a;https://www.yuque.com/wfzx/ninzck/cbf0cxkrr6s1kniv Redis 是什么 全名&#xff1a;远程字典服务。这是一个开源的在内存中的数据结构存…

中职网络安全Web2003-2——Web渗透测试

需要环境或换&#xff0c;有问题可以私信我或加Q 1.通过URL访问http://靶机IP/1&#xff0c;对该页面进行渗透测试&#xff0c;将完成后返回的结果内容作为Flag值提交&#xff1b; FLAGflag{htmlcode} 2.通过URL访问http://靶机IP/2&#xff0c;对该页面进行渗透测试&#xff…

设计模式(4)--对象行为(6)--备忘录

1. 意图 在不破坏封装的前提下&#xff0c;捕获一个对象的内部状态&#xff0c;并在该对象之外保存这个状态。 这样以后可以将该对象恢复到原先保存的状态。 2. 三种角色 原发器(Originator)、备忘录(Memento)、负责人(Caretaker) 3. 优点 3.1 保持了封装边界。屏蔽了原发器的…

汇编语言学习中的Dosbox自动配置方法

学到期末才发现可以自动配置 一、先找到dosbox的下载/安装路径 二、打开其下的Dosbox *.**(这里是版本号) Options.bat 三、在其打开的文件的最下面输入你经常打开dosbox要输入的内容 例如&#xff1a; mount c e:\masm c:

C++day3作业

#include <iostream>using namespace std;class Person {int *age;string &name; public: // Person() // {// }Person(int a,string &b):age(new int(a)),name(b){cout << "Person的有参构造" << endl;}Person(const Person &am…

关于设计模式、Java基础面试题

前言 之前为了准备面试&#xff0c;收集整理了一些面试题。 本篇文章更新时间2023年12月27日。 最新的内容可以看我的原文&#xff1a;https://www.yuque.com/wfzx/ninzck/cbf0cxkrr6s1kniv 设计模式 单例共有几种写法&#xff1f; 细分起来就有9种&#xff1a;懒汉&#x…

信号与线性系统翻转课堂笔记15——离散LTI系统模型分析

信号与线性系统翻转课堂笔记15——离散LTI系统模型分析 The Flipped Classroom15 of Signals and Linear Systems 对应教材&#xff1a;《信号与线性系统分析&#xff08;第五版&#xff09;》高等教育出版社&#xff0c;吴大正著 一、要点 &#xff08;1&#xff0c;重点&…

Java 基础学习(十八)多线程进阶、网络编程基础

1 并发工具包 1.1 并发工具包概述 1.1.1 什么是并发工具包 Java并发工具包是指java.util.concurrent&#xff08;简称JUC&#xff09;&#xff0c;在Java 5 版本中添加。JUC中包含了大量在并发应用开发中非常实用的工具类。 行业中说的JUC一般包含java.util.concurrent包、…

C# WPF上位机开发(报表导出)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 对于在工厂上班的小伙伴来说&#xff0c;导出生产数据、生成报表&#xff0c;这是很习以为常的一个工作。之前的文章中&#xff0c;虽然我们也介绍…

【10】ES6:Promise 对象

一、同步和异步 1、JS 是单线程语言 JavaScript 是一门单线程的语言&#xff0c;因此同一个时间只能做一件事情&#xff0c;这意味着所有任务都需要排队&#xff0c;前一个任务执行完&#xff0c;才会执行下一个任务。但是&#xff0c;如果前一个任务的执行时间很长&#xff…