2025 年 150 道手动测试面试问题和答案

我们整理了最常被问到的手动测试问题和答案,让您了解面试官在面试中可能会问您的软件测试员面试问题类型。在这个附带答案的软件测试面试问题列表中,我们涵盖了所有常用的基础和高级测试面试问题,并提供了详细的答案,以帮助您轻松通过有10年经验的手动测试工作面试。

我们涵盖了近150多个重要的软件测试口头问题,适用于应届毕业生和有经验的QA工程师,以帮助他们为即将到来的面试做准备。这份针对有经验的候选人的详细软件测试面试问题指南将帮助您成功通过软件测试的工作面试。

手动测试面试问题和答案(针对有经验者和应届毕业生)


1. 什么是探索性测试?

探索性测试是一种实践方法,测试人员在此过程中进行最少的规划和最大的测试执行。规划包括创建测试章程,即对短期(1到2小时)限时测试工作的范围、目标和可能使用的方法的简短声明。测试设计和测试执行活动并行进行,通常不正式记录测试条件、测试用例或测试脚本。这并不意味着不使用其他更正式的测试技术。例如,测试人员可以决定使用边界值分析,但会思考并测试最重要的边界值,而不必将其写下来。在探索性测试会话期间会写下一些笔记,以便之后可以生成报告。

👉 免费PDF下载:手动测试面试问题与答案


2. 什么是“用例测试”?

为了从头到尾识别和执行应用程序的功能需求,使用“用例”,而实现这一点的技术被称为“用例测试”。


3. STLC(软件测试生命周期)和SDLC(软件开发生命周期)之间有什么区别?

SDLC 处理软件的开发/编码,而 STLC 处理软件的验证和确认。


4. 什么是可追溯性矩阵?

测试用例与需求之间的关系通过一份文档显示。这份文档被称为可追溯性矩阵。


5. 什么是等价划分测试?

等价划分测试是一种软件测试技术,它将应用程序输入测试数据划分为每个分区至少一次的等价数据,从中可以派生出测试用例。通过这种测试方法,它减少了软件测试所需的时间。


6. 什么是白盒测试,列举白盒测试的类型?

白盒测试技术涉及根据组件或系统的内部结构(代码覆盖、分支覆盖、路径覆盖、条件覆盖等)分析选择测试用例。它也被称为基于代码的测试或结构测试。不同类型的白盒测试是

  1. 语句覆盖
  2. 决策覆盖

7. 在白盒测试中,您验证什么?

在白盒测试中,会验证以下步骤。

  1. 验证代码中的安全漏洞
  2. 验证代码中不完整或损坏的路径
  3. 根据文档规范验证结构流
  4. 验证预期输出
  5. 验证代码中的所有条件循环以检查应用程序的完整功能
  6. 逐行验证代码并覆盖100%的测试

8. 什么是黑盒测试?不同的黑盒测试技术有哪些?

黑盒测试是一种软件测试方法,用于在不知道代码或程序的内部结构的情况下测试软件。这种测试通常用于检查应用程序的功能。不同的黑盒测试技术有

  1. 等价划分
  2. 边界值分析
  3. 因果图

9. 静态测试和动态测试有什么区别?

静态测试:在静态测试方法中,代码不执行,它是使用软件文档执行的。

动态测试:执行此测试需要代码以可执行形式存在。


10. 什么是验证和确认?

验证是评估开发阶段软件的过程。它帮助您确定给定应用程序的产品是否满足指定需求。确认是评估开发过程后软件的过程,并检查它是否满足客户需求。


11. 不同的测试级别有哪些?

有四个测试级别

  1. 单元/组件/程序/模块测试
  2. 集成测试
  3. 系统测试
  4. 验收测试

12. 什么是集成测试?

集成测试是软件测试过程中的一个级别,其中应用程序的各个单元被组合和测试。它通常在单元测试和功能测试之后执行。


13. 测试计划包含什么?

测试计划文档包含测试设计、范围、测试策略、方法等各种详细信息。

  1. 测试用例标识符
  2. 范围
  3. 待测功能
  4. 不测试的功能
  5. 测试策略和测试方法
  6. 测试交付物
  7. 职责
  8. 人员配置和培训
  9. 风险与应急措施

14. UAT(用户验收测试)和系统测试之间有什么区别?

系统测试:系统测试是在系统整体进行测试时发现缺陷;它也被称为端到端测试。在此类测试中,应用程序从头到尾都受到测试。

UAT:用户验收测试(UAT)涉及通过一系列特定测试运行产品,这些测试确定产品是否能满足其用户的需求。


15. 提一下数据驱动测试和再测试之间的区别?

再测试:这是一个检查开发团队已处理的错误以验证它们是否已修复的过程。

数据驱动测试(DDT):在数据驱动测试过程中,应用程序使用多个测试数据进行测试。应用程序使用不同的值集进行测试。

针对3/5/10年经验的高级手动软件测试面试问题


16. 在测试过程中解决问题的有效步骤是什么?

  • 记录:记录并处理发生的任何问题
  • 报告:向高级经理报告问题
  • 控制:定义问题管理流程

17. 测试场景、测试用例和测试脚本之间有什么区别?

测试场景和测试用例的区别在于

测试场景:测试场景是任何可以测试的功能。它也被称为测试条件或测试可能性。

测试用例:它是一个包含必须执行的步骤的文档;它已提前计划。

测试脚本:它用编程语言编写,是一个用于测试软件系统部分功能的简短程序。换句话说,这是一组需要手动执行的书面步骤。


18. 什么是潜在缺陷?

潜在缺陷:此缺陷是系统中存在的缺陷,但由于从未满足确切的条件集,因此不会导致任何故障


19. 有哪些参数可以用于了解测试执行的质量?

为了了解测试执行的质量,我们可以使用两个参数

  • 缺陷拒绝率
  • 缺陷泄漏率

Parameters for quality of test execution

测试执行质量参数


20. 软件测试工具“phantom”的功能是什么?

Phantom 是一个免费软件,用于 Windows GUI 自动化脚本语言。它允许我们自动控制 Windows 和功能。它可以模拟任何组合的键盘按键和鼠标点击以及菜单、列表等。


21. 解释什么是测试交付物?

测试交付物是一组文档、工具和其他组件,必须开发和维护以支持测试。

在软件开发生命周期的每个阶段都有不同的测试交付物

  • 测试前
  • 测试中
  • 测试后

22. 什么是变异测试?

变异测试是一种通过有意引入各种代码更改(错误)并使用原始测试数据/用例重新测试以确定是否检测到这些错误来识别一组测试数据或测试用例是否有用的技术。


23. 在为AUT选择自动化工具之前,您应该考虑哪些方面?

  • 技术可行性
  • 复杂性级别
  • 应用稳定性
  • 测试数据
  • 应用程序大小
  • 自动化脚本的可重用性
  • 跨环境执行

24. 您将如何进行风险分析?

风险分析需要实施以下步骤

  1. 找出风险得分
  2. 建立风险档案
  3. 改变风险属性
  4. 部署该测试风险的资源
  5. 建立风险数据库

25. 调试的类别有哪些?

调试的类别

  1. 暴力调试
  2. 回溯
  3. 原因消除
  4. 程序切片
  5. 故障树分析

26. 什么是故障掩盖?请举例说明。

当一个缺陷的存在掩盖了系统中另一个缺陷的存在时,这被称为故障掩盖。

示例:如果“负值”导致未经处理的系统异常触发,开发人员将阻止负值输入。这将解决问题并隐藏未经处理的异常触发的缺陷。


27. 解释什么是测试计划?测试计划中应包含哪些信息?

测试计划可定义为描述测试活动的范围、方法、资源和时间表的文档,测试计划应涵盖以下详细信息。

  • 测试策略
  • 测试目标
  • 退出/暂停标准
  • 资源规划
  • 测试交付物

28. 如何在项目中消除产品风险?

它有助于您消除项目中的产品风险,并且有一个简单但至关重要的步骤可以减少项目中的产品风险。

  • 调查规范文档
  • 与所有利益相关者(包括开发人员)讨论项目
  • 作为真实用户浏览网站

29. 导致项目失败的常见风险是什么?

导致项目失败的常见风险是

  • 人力资源不足
  • 测试环境可能未正确设置
  • 预算有限
  • 时间限制

30. 您可以根据什么来估算项目?

要评估您的项目,您必须考虑以下几点

  • 将整个项目分解为最小的任务
  • 将每个任务分配给团队成员
  • 估算完成每项任务所需的工作量
  • 验证估算

31. 解释您将如何分配任务给团队成员?

任务 成员
分析软件需求规范 所有成员
创建测试规范 测试员/测试分析师
搭建测试环境 测试管理员
执行测试用例 测试员、测试管理员
报告缺陷 测试员

32. 解释什么是测试类型以及常用的测试类型有哪些?

为了获得预期的测试结果,遵循标准程序,这被称为测试类型。

常用的测试类型有

  • 单元测试:测试应用程序的最小代码
  • API测试:测试为应用程序创建的API
  • 集成测试:组合并测试单个软件模块
  • 系统测试:系统的完整测试
  • 安装/卸载测试:从客户/顾客角度进行的测试
  • 敏捷测试:通过敏捷技术进行的测试

33. 在监控项目时,您需要考虑哪些方面?

需要考虑的事项有

  • 您的项目是否按计划进行
  • 您是否超出预算
  • 您是否朝着相同的职业目标努力
  • 您是否有足够的资源
  • 是否有任何即将出现问题的警告信号
  • 管理层是否有压力要求更快完成项目

34. 导致问题的常见错误有哪些?

  • 资源与错误项目不匹配
  • 测试经理缺乏技能
  • 不听取他人意见
  • 糟糕的调度
  • 低估
  • 忽视小问题
  • 不遵循流程

35. 典型的测试报告包含什么?测试报告有什么好处?

测试报告包含以下内容

  • 项目信息
  • 测试目标
  • 测试摘要
  • 缺陷

测试报告的好处是

  • 通知项目当前状态和产品质量
  • 如果需要,利益相关者和客户可以采取纠正措施
  • 最终文件有助于决定产品是否准备好发布

36. 什么是测试管理评审以及它为什么重要?

管理评审也称为软件质量保证或SQA。SQA更侧重于软件过程而非软件工作产品。它是一组旨在确保项目经理遵循标准流程的活动。SQA帮助测试经理根据设定标准对项目进行基准测试。


37. 软件质量保证的最佳实践是什么?

有效实施 SQA 的最佳实践是

  • 持续改进
  • 文档
  • 工具使用
  • 指标
  • 团队成员的责任
  • 经验丰富的 SQA 审计员

38. RTM(需求可追溯性矩阵)何时准备?

RTM在测试用例设计之前准备。需求应可从评审活动中追溯。


39. 测试矩阵和可追溯性矩阵之间有什么区别?

测试矩阵:测试矩阵用于捕获软件测试所有阶段的实际质量、工作量、计划、资源和时间。

可追溯性矩阵:测试用例和客户需求之间的映射称为可追溯性矩阵。


40. 在手动测试中,什么是桩(stubs)和驱动(drivers)?

桩和驱动都是增量测试的一部分。在增量测试中,有两种方法,即自底向上和自顶向下方法。驱动用于自底向上测试,桩用于自顶向下方法。为了测试主模块,使用桩,它是一个虚拟代码或程序。


41. 发现缺陷后,您会遵循哪些步骤?

一旦发现缺陷,您将遵循以下步骤

a) 重现缺陷

b) 附上截图

c) 记录缺陷


42. 解释什么是“测试计划驱动”或“关键词驱动”测试方法?

此技术使用测试人员使用包含特殊“关键词”的电子表格开发的实际测试用例文档。关键词控制处理过程。


43. 什么是DFD(数据流图)?

当信息系统中的“数据流”以图形方式表示时,它被称为数据流图。它也用于数据处理的可视化。


44. 解释什么是LCSAJ?

LCSAJ 代表“线性代码序列和跳转”。它由以下三个项目组成

a) 可执行语句线性序列的开始

b) 线性序列的结束

c) 控制流在线性序列结束时转移到的目标行


45. 解释什么是N+1测试?

回归测试的变体表示为 N+1。在此技术中,测试在多个循环中执行,其中在测试循环“N”中发现的错误在测试循环 N+1 中解决并重新测试。循环重复,直到没有发现错误。


46. 什么是模糊测试以及它何时使用?

模糊测试用于检测软件中的安全漏洞和编码错误。在这种技术中,随机数据被添加到系统中,试图使系统崩溃。如果漏洞仍然存在,则使用一个名为模糊测试器的工具来确定潜在原因。这种技术对于大型项目更有用,但只能检测到主要故障。


47. 提一下软件测试中语句覆盖度量标准的主要优点是什么?

语句覆盖度量的好处是

a) 它不需要处理源代码,可以直接应用于目标代码

b) 错误均匀分布在代码中,因此可执行语句的覆盖百分比反映了发现的故障百分比


48. 如何为“替换字符串”方法生成测试用例?

a) 如果新字符串中的字符 > 前一个字符串中的字符。不应截断任何字符

b) 如果新字符串中的字符 < 前一个字符串中的字符。不应添加垃圾字符

c) 字符串前后的空格不应删除

d) 字符串只应替换字符串的首次出现


49. 您将如何处理团队成员之间的冲突?

  • 我将与每个人单独交谈,并记录他们的担忧
  • 我将找到团队成员提出的共同问题的解决方案
  • 我将召开团队会议,公布解决方案并要求大家合作

50. 提一下缺陷的类别有哪些?

主要有三类缺陷

  • 错误:当需求实施不正确时
  • 缺失:与规范的差异,表明规范未实施或客户要求未满足
  • 额外:产品中包含的未由最终客户提供的需求。它被认为是缺陷,因为它与现有需求存在差异。

51. 解释测试覆盖率工具如何工作?

代码覆盖率测试工具在对实际产品进行测试时并行运行。代码覆盖率工具监控源代码中已执行的语句。当最终测试完成时,我们会得到一份完整的待处理语句报告,并获得覆盖率百分比。


52. 提一下软件测试中“缺陷”和“故障”的区别是什么?

简单来说,当缺陷到达最终客户时,它被称为故障;而缺陷在内部被发现并解决时,则被称为缺陷。


53. 解释在一个跨越软件开发生命周期的项目中如何测试文档?

项目跨越软件开发生命周期的方式如下

  • 中心/项目测试计划:这是概述项目完整测试策略的主要测试计划。该计划一直用到软件开发生命周期结束
  • 验收测试计划:此文档在需求阶段开始,并在最终交付时完成
  • 系统测试计划:此计划在设计计划期间开始,并持续到项目结束
  • 集成和单元测试计划:这两个测试计划都在执行阶段开始,并持续到最终交付

54. 解释先编写黑盒测试用例还是白盒测试用例?

黑盒测试用例首先编写,因为编写黑盒测试用例需要项目计划和需求文档,所有这些文档在项目开始时都很容易获得。而编写白盒测试用例需要更多的架构理解,并且在项目开始时无法获得。


55. 解释潜在缺陷和掩盖缺陷的区别是什么?

  • 潜在缺陷:潜在缺陷是系统中已存在的缺陷,但由于从未满足一系列条件,因此尚未导致故障
  • 掩盖缺陷:这是系统中已存在的缺陷,但由于另一个缺陷阻止了该部分代码的执行,因此尚未导致故障。

56. 提一下什么是自底向上测试?

自底向上测试是一种集成测试方法,其中最低级别的组件首先进行测试,然后用于促进更高级别组件的测试。这个过程重复进行,直到测试层次结构顶部的组件。


57. 提一下不同类型的测试覆盖技术有哪些?

不同类型的测试覆盖技术包括

  • 语句覆盖:它验证源代码的每一行是否都已执行和测试
  • 决策覆盖:它确保源代码中的每个决策都已执行和测试
  • 路径覆盖:它确保通过给定代码部分的每个可能路径都已执行和测试

58. 提一下广度测试的含义是什么?

广度测试是一套测试套件,用于全面测试产品的功能,但不详细测试功能。


59. 解释代码走查的含义是什么?

代码走查是对程序源代码的非正式分析,以发现缺陷并验证编码技术。


60. 提一下缺陷报告格式的基本组成部分是什么?

缺陷报告格式的基本组成部分包括

  • 项目名称
  • 模块名称
  • 缺陷发现日期
  • 缺陷发现人
  • 缺陷ID和名称
  • 缺陷快照
  • 优先级和严重性状态
  • 缺陷解决人
  • 缺陷解决日期

61. 提一下进行端到端测试的目的何在?

端到端测试在功能测试之后进行。进行端到端测试的目的是

  • 验证软件需求以及与外部接口的集成
  • 在真实世界环境场景中测试应用程序
  • 测试应用程序与数据库之间的交互

62. 解释测试线束是什么意思?

测试线束是配置一组工具和测试数据,用于在各种条件下测试应用程序,它涉及将输出与预期输出进行比较以检查正确性。


63. 在测试项目中,您会自动化哪些测试活动?

在测试项目测试活动中,您将自动化以下内容

  • 需要为应用程序的每个构建运行的测试
  • 对同一组操作使用多个数据的测试
  • 需要使用不同浏览器执行的相同测试
  • 任务关键页面
  • 短时间内不发生变化的页面事务

64. 在生命周期早期设计测试的主要好处是什么?

它有助于防止缺陷引入代码中。


65. 什么是基于风险的测试?

基于风险的测试是用于创建基于风险优先级进行测试的测试策略的方法的术语。该方法的基础是详细的风险分析和按风险级别对风险进行优先级排序。然后指定解决每个风险的测试,从最高风险开始。


66. 预防性测试方法和反应性测试方法之间有什么关键区别?

预防性测试设计较早;反应性测试在软件生产后设计。


67. 退出标准的目的是什么?

退出标准的目的是定义何时完成测试级别。


68. 什么决定了风险等级?

不利事件的可能性和事件的影响决定了风险等级。


69. 决策表测试何时使用?

决策表测试用于测试规范以规则或因果组合形式出现的系统。在决策表中,输入列在一个列中,输出列在同一列但输入下方。表的其余部分探讨了输入组合以定义生成的输出。

在视频教程中了解更多关于决策表测试技术 此处


70. 我们为什么使用决策表?

等价划分和边界值分析技术通常应用于特定情况或输入。但是,如果不同的输入组合导致采取不同的操作,这可能更难以使用等价划分和边界值分析来显示,因为它们更侧重于用户界面。另外两种基于规范的技术,决策表和状态转换测试,更侧重于业务逻辑或业务规则。决策表是处理事物组合(例如输入)的好方法。这种技术有时也称为“因果”表。原因是存在一种相关的逻辑图表技术,称为“因果图”,有时用于帮助推导决策表


71. 评审软件交付物的最主要目标是什么?

识别任何软件工作产品中的缺陷。


72. 以下哪项定义了测试的预期结果?测试用例规范还是测试设计规范。

测试用例规范定义了测试的预期结果。


73. 测试独立性的好处是什么?

它避免了作者在定义有效测试时的偏见。


74. 在哪个测试过程中您确定退出标准?

退出标准是在“测试计划”的基础上确定的。


75. 什么是Alpha测试?

最终用户代表在开发人员所在地进行发布前测试。


76. 什么是Beta测试?

潜在客户在其所在位置执行的测试。


77. 提一下试点测试和Beta测试之间的区别是什么?

试点测试和Beta测试的区别在于,试点测试实际上是由用户组在最终部署之前使用产品完成的,而在Beta测试中,我们不输入真实数据,而是将其安装在最终客户处以验证产品是否可以在生产中使用。


78. 给定以下代码片段,实现100%决策覆盖需要多少个测试?

if width > length 
   thenbiggest_dimension = width
     if height > width 
             thenbiggest_dimension = height 
     end_if
elsebiggest_dimension = length  
            if height > length 
                thenbiggest_dimension = height 
          end_if
end_if

4


79. 您已经设计了测试用例,以实现以下代码片段的100%语句覆盖和100%决策覆盖。如果 width > length 则 biggest_dimension = width 否则 biggest_dimension = length end_if 以下内容已添加到上述代码片段的底部。打印“最大维度是” &biggest_dimension 打印“宽度:” & width 打印“长度:” & length 还需要多少个测试用例?

不需要,可以使用现有测试用例。


80. 测试技术和测试工具有什么区别?

测试技术:——是确保应用程序系统或单元某些方面功能正常的流程,技术可能很少,但工具很多。

测试工具:——是执行测试过程的载体。工具是测试人员的资源,但其本身不足以进行测试

在此处了解更多关于测试工具的信息 here


81. 我们将需求分析的输出、需求规范作为编写……的输入

用户验收测试用例


82. 在修改后对已测试的程序进行重复测试,以发现由于被测软件或另一个相关或不相关软件组件的更改而引入或发现的任何缺陷

回归测试


83. 批发商销售打印机墨盒。最低订购量为5个。订购100个或更多打印机墨盒可享受20%的折扣。您被要求使用各种数量的打印机墨盒值来准备测试用例。以下哪个组包含使用边界值分析生成的三个测试输入?

4, 5, 99


84. 什么是组件测试?

组件测试,也称为单元测试、模块测试和程序测试,用于在可单独测试的软件(例如模块、程序、对象、类等)中查找缺陷并验证其功能。组件测试可以与系统其他部分隔离进行,具体取决于开发生命周期和系统的上下文。通常使用桩和驱动程序来替换缺失的软件并简单地模拟软件组件之间的接口。桩从要测试的软件组件中调用;驱动程序调用要测试的组件。

这是一个关于单元测试的精彩视频


85. 什么是功能系统测试?

测试系统整体的端到端功能被定义为功能系统测试。


86. 独立测试的好处是什么?

独立的测试人员公正地同时识别不同的缺陷。


87. 在反应性测试方法中,您预计大部分测试设计工作何时开始?

大部分测试设计工作在软件或系统生产后开始。


88. 敏捷开发模型中有哪些不同的方法论?

目前我知道有七种不同的敏捷方法论

  1. 极限编程 (XP)
  2. Scrum
  3. 精益软件开发
  4. 特性驱动开发
  5. 敏捷统一过程
  6. 水晶
  7. 动态系统开发模型 (DSDM)

89. 基本测试过程中的哪项活动包括评估需求和系统的可测试性?

“测试分析”和“设计”包括评估需求和系统的可测试性。


90. 使用风险驱动测试工作的最重要原因通常是什么?

因为测试所有内容是不可行的。


91. 什么是随机/猴子测试?它何时使用?

随机测试通常被称为猴子测试。在此类测试中,数据通常使用工具或自动化机制随机生成。通过这些随机生成的输入,系统进行测试,并相应地分析结果。这些测试的可靠性较低;因此,它通常由初学者使用,以查看系统在不利影响下是否能承受。


92. 以下哪项是事件报告的有效目标?

  1. 向开发人员和其他各方提供有关问题的反馈,以便根据需要进行识别、隔离和纠正。
  2. 为测试过程改进提供想法。
  3. 提供评估测试人员能力的途径。
  4. 为测试人员提供跟踪被测系统质量的手段。

93. 考虑以下技术。哪些是静态技术,哪些是动态技术?

  1. 等价划分。
  2. 用例测试。
  3. 数据流分析。
  4. 探索性测试。
  5. 决策测试。
  6. 检查。

数据流分析和检查是静态的;等价划分、用例测试、探索性测试和决策测试是动态的。


94. 为什么静态测试和动态测试被描述为互补的?

因为它们都旨在识别缺陷,但在发现的缺陷类型上有所不同。


95. 正式评审的阶段有哪些?

与非正式评审相反,正式评审遵循正式流程。典型的正式评审流程包括六个主要步骤

  1. 规划
  2. 启动
  3. 准备
  4. 评审会议
  5. 返工
  6. 后续跟踪。

96. 评审过程中协调员的角色是什么?

主持人(或评审负责人)领导评审过程。他或她与作者合作,确定评审类型、方法和评审团队的组成。主持人执行进入检查和返工的后续跟踪,以控制评审过程的输入和输出质量。主持人还安排会议,在会议前分发文档,指导其他团队成员,控制会议节奏,领导可能的讨论,并存储收集的数据。

在此处了解更多关于评审流程的信息 here


97. 什么是等价分区(也称为等价类)?

输入或输出的值范围,使得该范围中只有一个值成为测试用例。


98. 配置管理程序何时实施?

在测试计划期间。


99. 一种功能测试类型,它调查与检测威胁(例如来自恶意外部人员的病毒)相关的功能?

安全性测试


100. 在此测试中,我们将测试目标置于不同的工作负载下,以测量和评估其性能行为以及在这些不同工作负载下继续正常运行的能力?

负载测试


101. 旨在揭示接口和集成组件之间交互中的缺陷的测试活动是?

集成级别测试


102. 结构化(白盒)测试技术有哪些?

基于结构的测试技术(也是动态而非静态的)使用软件的内部结构来派生测试用例。它们通常被称为“白盒”或“玻璃盒”技术(暗示您可以深入了解系统),因为它们需要了解软件如何实现,即它是如何工作的。例如,一种结构化技术可能关注软件中的循环执行。可以派生不同的测试用例来执行循环一次、两次和多次。这可以独立于软件的功能进行。


103. “回归测试”应何时执行?

在软件更改或环境更改后,应执行回归测试


104. 什么是负面测试和正面测试?

负面测试是指您输入无效输入并收到错误。而正面测试是指您输入有效输入并期望根据规范完成某些操作。


105. 测试完成标准的目的是什么?

测试完成标准的目的是确定何时停止测试。


106. 静态分析不能发现什么?

例如内存泄漏。


107. 再测试和回归测试有什么区别?

再测试确保原始故障已排除;回归测试寻找意外的副作用。


108. 基于经验的测试技术有哪些?

在基于经验的技术中,人们的知识、技能和背景是测试条件和测试用例的主要贡献者。技术和业务人员的经验都很重要,因为他们为测试分析和设计过程带来了不同的视角。由于对类似系统的先前经验,他们可能对可能出错的地方有见解,这对于测试非常有用。


109. 哪种类型的评审需要正式的进入和退出标准,包括度量?

检查


110. 评审或检查可以被认为是测试的一部分吗?

是的,因为两者都有助于检测故障并提高质量。


111. 输入字段接受1900年至2004年的出生年份,测试此字段的边界值是什么?

1899,1900,2004,2005


112. 以下哪种工具将用于自动化回归测试?a.数据测试器 b.边界测试器 c.捕获/回放 d.输出比较器。

d. 输出比较器


113. 要测试一个函数,程序员必须编写什么来调用要测试的函数并传递测试数据。

驱动


114. 开发者难以测试自己工作的一个关键原因是什么?

缺乏客观性


115. “多少测试才足够?”

答案取决于您行业的风险、合同和特殊要求。


116. 测试何时停止?

这取决于被测系统的风险。有一些标准可以根据它们来停止测试。

  1. 截止日期(测试、发布)
  2. 测试预算已耗尽
  3. 错误率降至一定水平以下
  4. 测试用例以一定通过率完成
  5. Alpha 或 Beta 测试周期结束
  6. 代码、功能或需求的覆盖率达到指定点

117. 以下哪项是小型集成测试的集成策略的主要目的?

集成策略的主要目的是指定何时以及一次组合多少个模块。


118. 什么是半随机测试用例?

半随机测试用例什么都不是,但是当我们执行随机测试用例并对这些测试用例进行等价划分时,它会删除冗余测试用例,从而给我们半随机测试用例。


119. 给定以下代码,关于完全语句覆盖和分支覆盖所需的最小测试用例数量,以下哪项陈述是正确的?

读取 p

读取 q

如果 p+q> 100

则打印“大”

结束如果

如果 p > 50

则打印“p 大”

结束如果

语句覆盖1个测试,分支覆盖2个测试


120. 哪种评审通常用于评估产品,以确定其是否适合预期用途并识别差异?

技术审查。


121. 发现的故障应由谁最初记录?

由测试人员。


122. 当前正式的全球公认文档标准是什么?

没有。


123. 以下哪项是评审参与者中创建要评审项的人?

作者


124. 软件中修复了一些关键错误。所有错误都在一个与报告相关的模块中。测试经理决定只对报告模块进行回归测试。

回归测试也应该在其他模块上进行,因为修复一个模块可能会影响其他模块。


125. 为什么边界值分析能提供好的测试用例?

因为在对值范围“边缘”附近的不同情况进行编程时,经常会发生错误。


126. 检查与其他评审类型有何不同?

它由训练有素的领导者领导,使用正式的进入和退出标准以及清单。


127. 为什么测试人员可以依赖配置管理?

因为配置管理确保我们知道测试件和测试对象的精确版本。


128. 什么是V模型?

一种软件开发模型,说明测试活动如何与软件开发阶段集成。


129. 什么是维护测试?

由现有软件的修改、迁移或退役触发。


130. 什么是测试覆盖率?

测试覆盖率以某种特定方式衡量一组测试(以其他方式派生,例如,使用基于规范的技术)执行的测试量。只要我们能计算事物并判断这些事物中的每一个是否已通过某个测试进行测试,那么我们就可以衡量覆盖率。


131. 为什么增量集成优于“大爆炸”集成?

因为增量集成具有更好的早期缺陷筛选和隔离能力


132. 从终端模块开始的过程叫什么?

自底向上集成


133. 在哪个测试活动中发现故障最具成本效益?

在测试计划期间


134. 需求阶段的目的是

冻结需求,了解用户需求,定义测试范围


135. 我们为什么将测试分成不同的阶段?

我们将测试分成不同的阶段,原因如下,

  1. 每个测试阶段都有不同的目的
  2. 分阶段管理测试更容易
  3. 我们可以在不同的环境中运行不同的测试
  4. 通过分阶段测试提高了测试的性能和质量

136. 什么是DRE?

为了衡量测试有效性,使用了一个强大的度量标准来衡量测试有效性,称为DRE(缺陷移除效率)。通过这个度量标准,我们可以知道从一组测试用例中发现了多少错误。计算DRE的公式是

DRE = 测试期间发现的错误数量 / (测试期间发现的错误数量 + 用户发现的错误数量)


137. 以下哪项最可能受益于提供测试捕获和回放功能的测试工具?a) 回归测试 b) 集成测试 c) 系统测试 d) 用户验收测试

回归测试


138. 您将如何估算可能需要的再测试量?

来自以前类似项目的指标以及与开发团队的讨论


139. 什么研究数据流分析?

代码中路径数据的使用。


140. 什么是故障?

故障是偏离指定行为。


141. 什么是测试比较器?

如果你将一些输入放入一些软件中,但从未查看软件是否产生了正确的结果,这真的是测试吗?测试的本质是检查软件是否产生了正确的结果,为此,我们必须将软件产生的结果与它应该产生的结果进行比较。测试比较器有助于自动化比较的各个方面。


142. 谁负责记录评审会议期间发现的所有问题、缺陷和待定事项?

抄写员


143. 非正式评审的主要目的是什么?

一种获取一些好处的廉价方式


144. 测试设计技术的目的是什么?

识别测试条件和识别测试用例


145. 在测试成绩计算系统时,测试人员确定所有90到100分将获得A级,但90分以下将不会。这种分析被称为

等价划分


146. 测试经理希望将可用资源用于Web应用程序的自动化测试。最佳选择是

测试员、测试自动化工程师、Web专家、DBA


147. 在测试模块期间,测试员“X”发现了一个bug并将其分配给开发人员。但开发人员拒绝了,称这不是一个bug。“X”应该怎么做?

发送遇到的bug的详细信息并检查可重现性


一种集成测试类型,其中软件元素、硬件元素或两者同时组合成一个组件或一个整体系统,而不是分阶段进行。

大爆炸测试


149. 在实践中,哪个生命周期模型可能具有更多、更少或不同的开发和测试级别,具体取决于项目和软件产品。例如,组件测试后可能有组件集成测试,系统测试后可能有系统集成测试。

V型模型


150. 哪种技术可用于实现输入和输出覆盖?它可应用于人工输入、通过接口到系统的输入或集成测试中的接口参数。

等价划分


151. “此生命周期模型受进度和预算风险驱动”此声明最适合。

V型模型


152. 测试应按什么顺序运行?

最重要的必须先测试


153. 故障在开发生命周期中发现得越晚,修复成本就越高。为什么?

故障已被构建到更多文档、代码、测试等中


154. 什么是覆盖率测量?

它是测试彻底性的一种部分衡量标准。


155. 什么是边界值测试?

对输入和输出等价类的边缘、边缘以下和边缘以上进行边界条件测试。例如,假设一个银行应用程序,您可以提取最高20,000卢比,最低100卢比,因此在边界值测试中,我们只测试精确的边界,而不是击中中间。这意味着我们测试高于最高限额和低于最低限额。


156. COTS代表什么?

商用现成产品。


157. 其目的是允许在尽可能接近被测项目发布后将使用的环境的系统或网络上执行特定测试?

测试环境


158. 什么可以被认为是基于项目计划,但具有更多细节?

阶段测试计划


159. 什么是快速应用开发?

快速应用开发 (RAD) 是一种正式的功能并行开发和后续集成方法。组件/功能并行开发,就像它们是微型项目一样,开发是限时完成、交付,然后组装成一个工作原型。这可以非常快速地让客户看到和使用一些东西,并就交付和他们的需求提供反馈。使用这种方法可以快速更改和开发产品。但是,产品规范需要在某个时候为产品开发,并且在投入生产之前,项目需要置于更正式的控制之下。

👉 参考我们的 – 测试测验

👉 参考我们的 – 软件测试面试问题 Youtube 视频

免费PDF下载:软件测试面试问题与答案

以上手动测试面试问题与答案PDF将帮助应届毕业生和有经验的质量保证工程师。请与朋友和同事分享此页面。