2022年软件测试面试题分享

一,上来必然是自我介绍。

  • 自我介绍是任何一个面试过程中必不可少的环节,并且可以说是最重要的环节,因为每个面试官都需要用最短的时间去了解你这个人,以前干过什么,有过几年经验,做过哪些项目。可以说,通过一个简短的自我介绍,面试官心里已经有50%的数决定要不要你了。

二、问你上家公司的测试流程。

  • 没有上家公司,别闹了,打算面试实习生吗,上来咱们就面正式的,技术水平达到了,何必让工作经验这一项去限制你。

  • 那么说,面试官问到这个问题,一方面是为了了解上家公司与本公司的测试流程是否接近,要有一个比较,如果不一样,差距大不大,你的流程是否正规。其实这些都不是最主要的

  • 主要的是为了考察你对于整个测试流程是否清晰明确。面试官借问上家的测试流程,来考察你对完整测试流程的掌握。所以说,这是第一个坑,如果你说不好,或者敷衍的说就是随便测,那么你就失去了一次展现自己能力的机会,也就跳进了面试官给你设置的第一个“陷阱”里。

题外话,咱们延伸的说一下如果面试官问到了这个问题,该如何去回答。

  • 首先,一家正规的公司测试流程中的第一件事,就是拿到需求文档,用户把自己想要的东西说出来,产品人员来记录,并转化成一个需求文档。

  • 随后,咱们测试人员和开发人员在产品人员拿出需求文档后,进行一个需求评审,需要了解用户他们到底想要一个什么样的功能,讲了一个什么软件。在评审的过程中,一定要对需求进行一个分析,看看有么有二义性的内容,有没有描述不准确。

  • 这是第一件事,需求评审。

  • 那么咱们需求评审通过之后呢,咱们测人员需要由测试的组长和经理来编写一份测试计划。测试计划写完之后,再把所有的测试人员召集到一起开会开会,对测试计划进行一个评审。评审什么内容呢?安排的是不是合理?时间的安排是不是真的够用?包括里边的风险是不是规避掉了,还有咱们的测试机的准备等

  • 评审通过之后,咱们再去编写测试用例,把人员分工下去,然后编写好测试用例之后,再进行测试用例的评审。如果没有遗漏的点,评审通过之后开始执行测试用例,然后第一轮测试、第二次测试、第三次测试迭代,直到他验收测试,然后发布上线编写咱们的测试报告。整个这一套流程结束。

  • 把这个流程结合你简历中的项目去回答,绝对是个非常完美的回答,作为面试官来说,会认为你对上家单位的测试流程是非常非常清晰的!这是一个面试官比较希望听到你一个完美的回答的一个问题,也是能够衡量出你这个人到底有没有真正工作过的一个问题。

三、问你主要负责哪方面的业务(注意!送命题!)

  • 举个例子,按照电商类的项目去举例。因为如果没有工作经验的话,在这个话题上不敢回答,就说自己只负责注册登录模块,如果要是这么回答,好了,你在面试官心里已被枪毙了。

  • 因为什么,测试经理的时候只会吧注册模块分给实习生去做,我绝对不会把这个模块交个一个技术能力强的人,如果说你负责的知识这个模块,那只能说你的领导并不看好你。

  • 那么说要怎么回答这个“送命题”呢?大胆的去说你是负责一个流程的测试,我是负责下单流程的、或者负责支付流程的、也或者是退款流程的,这些都是比较有逻辑性的。那么这些流程是涉及到前后台,因为牵扯到审核环节,那就要涉及到数据库,所以说你这样去回答,说明你做的工作比较有技术含量,你的技术水平没有问题。

四、你都用到了哪些测试方法?

  • 你说一个逻辑性比较强的业务归你来测,然后面试官肯定会问,那你都用到了哪些测试方法,这些都是为了验证上一个问题的真实性。。

五、你在测试过程中遇到了一个比较逻辑性最强的一个BUG是什么?

送命题!敲黑板!

  • 这个问题问的目的是什么?目的是你到底有没有真正的测试过,如果你是编的这个简历,如果你是骗面试官的话,这个环节你就卡住了,因为你当时临场,你绝对想象不到你当初发现了一个逻辑性比较强的BUG到底是个什么?你当时想到不出来。这个是一个验证这个项目到底是否真实的一个小方法。
  • 还有的面试官非常狡猾,会故意说错一些东西,比如在说到loadrunner或者jmeter的时候,我故意说错一些东西
  • 然后我看你的反应,如果面无表情没有反应或者依然在点头,那么我就可以肯定你不会这个工具,简历里写的“熟悉”或者“精通”是包含水分的,所以,面试官考察你的工具使用情况,或许并不会直接问你。

测试理论基础类:

  • 熟悉常用的测试用例设计方法,如:
    等价类划分,边界值,正交表法,场景法,错误推断法,因果图法(这些方法是黑盒测试的).可以让对方针对其中的一两个方法举例说明.
  • 对于测试类型的了解:
    功能测试,性能测试,稳定性,压力,负载,安全性测试等.
  • 测试用例的基本格式是怎样的
    普遍的都会有:标题,预置条件,输入,执行步骤,预期结果.这几个项目
  • 测试结束的标准:
    用例全部测试,覆盖率达到标准,缺陷率达到标准,其他指标达到标准.

综合方面:

  • 考核对方在设计测试用例时是否考虑的全面

例:给一个水杯,设计测试用例:给一个我自己总结的答案:先询问出题人这个水杯是用在什么环境下,适用人群是谁,水杯有没有什么合格指标,再根据这些得到的信息,进一步设计用例.(从多方面来考虑)

  • 功能度:用水杯装水看漏不漏;水能不能被喝到
  • 安全性:杯子有没有毒或细菌
  • 可靠性:杯子从不同高度落下的损坏程度
  • 可移植性:杯子在不同的地方、温度等环境下是否都可以正常使用
  • 兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等
  • 易用性:杯子是否烫手、是否有防滑措施、是否方便饮用
  • 用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
  • 疲劳测试:将杯子盛上水(案例一)放24小时检查泄漏时间和情况;盛上汽油(案例二)放24小时检查泄漏时间和情况等
  • 压力测试:用根针并在针上面不断加重量,看压强多大时会穿透

测试的定义

  • 软件测试是软件工程过程的一个重要阶段,是在软件升级发布之前对软件开发各阶段产品的最终检查,是为了保证软件开发产品的正确性、完全性和一致性而检测软件错误、修正软件错误的过程。
  • 软件测试是:
  1. 程序测试是为了发现错误而执行程序的过程
  2. 测试是为了证明程序有错,而不是证明程序无错误
  3. 一个好的测试用例是在于它能发现至今未发现的错误
  4. 一个成功的测试是发现了至今未发现的错误的测试

从测试方法角度分为

  • 黑盒测试

  • 是功能测试、数据驱动测试或基于规格说明的测试。在不考虑程序内部结构和内部特性的情况下,测试者依据该程序功能上的输入输出关系,或是程序的外部特性来设计和选择测试用例,推断程序编码的正确性。

  • 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

(1)划分等价类。

  • ①如果某个输入条件规定了取值范围或值的个数。则可确定一个合理的等价类(输入值或数在此范围内)和两个不合理等价类(输入值或个数小于这个范围的最小值或大于这个范围的最大值)。
  • ②如果规定了输入数据的一组值,而且程序对不同的输入值做不同的处理,则每个允许输入值是一个合理等价类,此处还有一个不合理等价类(任何一个不允许的输入值)。
    软件测试面试题+测试基础知识
  • ③如果规定了输入数据必须遵循的规则,可确定一个合理等价类(符合规则)和若干个不合理等价类(从各种不同角度违反规则)。
  • ④如果已划分的等价类中各元素在程序中的处理方式不同,则应将此等价类进一步划分为更小的等价类。

(2)确定测试用例。

  • ①为每一个等价类编号。
  • ②设计一个测试用例,使其尽可能多地覆盖尚未被覆盖过的合理等价类。重复这步,直到所有合理等价类被测试用例覆盖。
  • ③设计一个测试用例,使其只覆盖一个不合理等价类。

边界值分析

使用边界值分析方法设计测试用例时一般与等价类划分结合起来。但它不是从一个等价类中任选一个例子作为代表,而是将测试边界情况作为重点目标,选取正好等于、刚刚大于或刚刚小于边界值的测试数据。

  • (1)如果输入条件规定了值的范围,可以选择正好等于边界值的数据作为合理的测试用例,同时还要选择刚好越过边界值的数据作为不合理的测试用例。如输入值的范围是[1,100],可取0,1,100,101等值作为测试数据。
  • (2)如果输入条件指出了输入数据的个数,则按最大个数、最小个数、比最小个数少1、比最大个数多1等情况分别设计测试用例。如,一个输入文件可包括1–255个记录,则分别设计有1个记录、255个记录,以及0个记录的输入文件的测试用例。

错误推测法

  • 在测试程序时,人们可能根据经验或直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的测试用例,这就是错误推测法。

因果图法

  • 等价类划分和边界值方法分析方法都只是孤立地考虑各个输入数据的测试功能,而没有考虑多个输入数据的组合引起的错误。

你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决。

  • 首先,将问题提交到缺陷管理库里面进行备案。

  • 然后,要获取判断的依据和标准: 根据需求说明书、产品说明、设计文档等,确认实际结果是否与计划有不一致的地方,提供缺陷是否确认的直接依据;

  • 如果没有文档依据,可以根据类似软件的一般特性来说明是否存在不一致的地方,来确认是否是缺陷; 根据用户的一般使用习惯,来确认是否是缺陷;

  • 与设计人员、开发人员和客户代表等相关人员探讨,确认是否是缺陷;

  • 合理的论述,向测试经理说明自己的判断的理由,等待测试经理做出最终决定,如果仍然存在争议,可以通过公司政策所提供的渠道,向上级反映,并有上级做出决定。

给你一个网站,你如何测试?

  • 首先,查找需求说明、网站设计m等相关文档,分析测试需求。 制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:
  • 功能性测试;界面测试;性能测试;数据库测试;安全性测试;兼容性测试 设计测试用例: 功能性测试可以包括,但不限于以下几个方面:
  • 链接测试。链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回等。

软件生存周期及其模型是什么?

  • 软件生存周期是软件开发全部过程、活动和任务的结构框架,是从可行性研究到需求分析、软件设计、编码、测试、软件发布维护的过程。

  • 在经历需求、分析、设计、实现、部署后,软件将被使用并进入维护阶段,直到最后由于缺少维护费用而逐渐消亡。这样的一个过程。

什么是软件测试?软件测试的目的与原则

  • 使用人工或自动手段,来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。

软件测试的目的:

  • 测试是程序的执行过程,目的在于发现错误
  • 一个成功的测试用例在于发现至今未发现的错误
  • 一个成功的测试是发现了至今未发现的错误的测试
  • 确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说明。
  • 确保产品满足性能和效率的要求
  • 确保产品是健壮的和适应用户环境的

软件测试分为几个阶段 各阶段的测试策略和要求是什么?

  • 软件测试按阶段划分可以分为单元测试、集成测试、系统测试和<验收测试>(不一定有)几个阶段

画缺陷管理流程图
2022年软件测试面试题分享_第1张图片
画V&V模型
2022年软件测试面试题分享_第2张图片

软件测试工作的74个常见问题

1、你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决?

2、给你一个网站,你如何测试?

3、在搜索引擎中输入汉字就可以解析到对应的域名,请问如何用LoadRunner进行测试。

4、一台客户端有三百个客户与三百个客户端有三百个客户对服务器施压,有什么区别?

5、试述软件的概念和特点?软件复用的含义?构件包括哪些?

6、软件生存周期及其模型是什么?

7、什么是软件测试?软件测试的目的与原则

8、软件配置管理的作用?软件配置包括什么?

9、什么是软件质量?

10、目前主要的测试用例设计方法是什么?

11、软件的安全性应从哪几个方面去测试?

12、什么是测试用例 什么是测试脚本 两者的关系是什么?

13、简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试 β测试

14、软件质量保证体系是什么 国家标准中与质量保证管理相关的几个标准是什么?他们的编号和全称是什么?

15、软件产品质量特性是什么?

16、软件测试的策略是什么?

17、软件测试分为几个阶段 各阶段的测试策略和要求是什么?

18、软件测试各个阶段通常完成什么工作?各个阶段的结果文件是什么?包括什么内容?

19、测试人员在软件开发过程中的任务是什么?

20、在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录?

21、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!

22、如何测试一个纸杯?

22、测试计划工作的目的是什么?测试计划文档的内容应该包括什么?其中哪些是最重要的?

23、黑盒测试的测试用例常见设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。

24、详细的描述一个测试活动完整的过程。

25、BUG管理工具的跟踪过程(用BugZilla为例子)

26、您认为在测试人员同开发人员的沟通过程中,如何提高沟通的效率和改善沟通的效果?维持测试人员同开发团队中其他成员良好的人际关系的关键是什么?

27、你对测试最大的兴趣在哪里?为什么?

28、你自认为测试的优势在哪里?

29、简述你在以前的工作中做过哪些事情,比较熟悉什么。

30、你的离职原因是什么?

31、给你一个网站,你将如何测试?

32、APP测试与web测试有什么区别?

33、说说你对集成测试中自顶向下集成和自底向上集成两个策略的理解,要谈出它们各自的优缺点和主要适应于哪种类型测试;

34、软件验收测试包括哪几种?

35、系统测试的策略有哪些?

36、设计系统测试计划需要参考的项目文档有哪些?

37、通过画因果图来写测试用例的步骤为?及把因果图转换为状态图共五个步骤。 利用因果图生成测试用例的基本步骤是?

38、请说出哪些测试最好由哪些人员完成,测试的是什么?

39、设计测试用例时应该考虑哪些方面,即不同的测试用例针对那些方面进行测试?

40、在windows下保存一个文本文件时会弹出保存对话框,如果为文件名建立测试用例,等价类应该怎样划分?

41、假设有一个文本框要求输入10个字符的邮政编码,对于该文本框应该怎样划分等价类?

42、软件测试项目从什么时候开始?为什么?

43、什么是回归测试?

44、单元测试、集成测试、系统测试的侧重点是什么?

45、一个测试工程师应具备那些素质?

46、你所了解的的软件测试类型都有哪些,简单介绍一下。

47、你认为做好测试计划工作的关键是什么?

48、您认为做好测试用例设计工作的关键是什么?

49、你的测试职业发展目标是什么?

50、测试结束的标准是什么?

51、一套完整的测试应该由哪些阶段组成?

52、您是否了解以往所工作的企业的软件开发过程?如果了解,请试述一个完整的开发过程需要完成哪
些工作?分别由哪些不同的角色来完成这些工作?您在以往的测试工作中都曾经具体从事过哪些工作?
其中最擅长哪部分工作?

53、测试用例设计的原则是什么?目前主要的测试用例设计方法有哪些?

54、面向对象的测试用例设计有几种方法?如何实现?

55、LoadRunner分为哪三个模块?请简述各模块的主要功能。

56、您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测
试、性能测试……)

57、请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。

58、为什么要在一个团队中开展软件测试工作?

59、一份测试计划应该包括哪些内容?

60、针对于软件的行业背景,你如何理解软件的业务?

61、如何定位测试用例的作用?

62、什么是兼容性测试?请举例说明如何利用兼容性测试列表进行测试。

63、对某软件进行测试,发现在WinXP上运行得很慢,怎么判别是该软件存在问题还是其软硬件运行环
境存在问题?

64、需求测试的注意事项有哪些?

65、主键、外键的作用,索引的优点与不足?

66、性能测试的流程?

67、简述bug的生命周期?

68、缺陷记录应包含的内容?

69、您认为做好测试计划工作的关键是什么?

70、您认为做好测试用例设计工作的关键是什么?

71、您以往的工作中是否曾开展过测试用例的评审工作?如果有,请描述测试用例评审的过程和评审的内
容。

72、您认为性能测试工作的目的是什么?做好性能测试工作的关键是什么?

73、您以往所从事的软件测试工作中,是否使用了一些工具来进行软件缺陷(Bug)的管理?如果有,请结
合该工具描述软件缺陷(Bug)跟踪管理的流程。

74、您如何看待软件过程改进?在您曾经工作过的企业中,是否有一些需要改进的东西呢?您期望的理想
的测试人员的工作环境是怎样的?

你可能感兴趣的:(面试题,软件测试)