1. 首页 > 人力资源 > 在线面试

软件测试常见面试题有哪些?

软件测试常见面试题分类解析

面试

一、测试用例设计相关

测试用例设计是软件测试的基础,在面试中经常被问到。

  • 黑盒测试用例设计方法
    • 等价类划分法:将输入域划分成若干个等价类,从每个等价类中选取一个代表性的数据作为测试用例。例如在一个输入年龄的字段,可能将年龄范围划分为有效等价类(如18 - 60岁)和无效等价类(小于18岁或大于60岁)。这样可以减少测试用例的数量,同时保证测试的全面性。
    • 边界值分析法:关注输入或输出的边界情况。因为在边界上最容易出现错误。比如在一个允许输入1 - 100数字的文本框,1和100就是边界值,测试用例就需要重点考虑边界值以及边界值附近的值,像0、1、2、99、100、101等。
    • 因果图法:适用于有多种输入条件组合的情况。当输入条件之间存在因果关系时,通过因果图来分析各种组合情况,然后设计测试用例。例如在一个电商系统中,商品是否有库存(原因)和能否下单成功(结果)之间存在因果关系。
    • 错误猜测法:基于测试人员的经验和直觉来猜测可能出现错误的地方并设计测试用例。比如登录功能,测试人员可能猜测密码输入错误多次后账户是否会被锁定等情况。
  • 白盒测试用例设计方法
    • 逻辑覆盖法:包括语句覆盖、判定覆盖、条件覆盖等。语句覆盖要求测试用例能使程序中的每一条语句至少执行一次;判定覆盖要求使程序中的每一个判定的所有可能结果至少出现一次;条件覆盖则是要使判定中的每个条件的所有可能结果至少出现一次。例如在一个简单的if - else语句块中,通过不同的输入来满足这些覆盖标准。
    • 循环测试路径选择:对于有循环结构的程序,要考虑循环的执行次数,如循环0次、1次、多次的情况。比如在一个计算1到n的累加和的程序中,n = 0、n = 1、n > 1的情况都需要测试。
    • 基本路径测试:根据程序的控制流图,计算出程序的独立路径,设计测试用例来覆盖这些独立路径。

二、性能测试相关

  • 性能测试工具及原理:如LoadRunner,它能够录制测试人员的操作步骤,然后对这个操作步骤模拟出多个用户来播放出来。其工作流程包括:通过Visural User Genertor创建脚本,选择协议,录制操作,编辑操作;中央控制器(Controller)调度虚拟用户,创建场景,选择脚本,建立虚拟用户,设计shedual,设置ip spoofer;运行脚本,分析shedual;分析测试结果。
  • 性能测试的目的和关键:性能测试工作的目的是检查系统是否满足在需求说明书中规定的性能,常常需要和强度测试结合起来,并且要求同时进行软件和硬件的检测。性能测试主要关注对象是响应时间、吞吐量、占用内存大小(辅助存储区)、处理精度等。做好性能测试工作的关键是准确地模拟实际的用户负载,并且对测试结果进行有效的分析。

三、软件缺陷相关

  • 软件缺陷记录内容:在以往的工作中,一条软件缺陷记录包含检测时间、系统环境、硬件环境、严重程度、程式版本、确认人、功能模板、问题描述、详细操作步骤、是否会重现等内容。
  • 提交高质量缺陷记录的方法:问题描述和详细操作步骤要尽可能详细,Bug应该尽量用书面语,对于严重程度比较高的缺陷要在相同环境下测试一遍。在C\S模式下,如果条件满足可以使用替换法来确认是client端的问题还是server端的问题。

四、测试流程与计划相关

  • 测试计划工作的关键:要有一个明确的目标,详细阅读需求文档说明;要对整个测试人员、测试时间、测试进度进行一个预估,并预先进行管理;要对整个测试流程设定一个规范,所有测试人员都按着规范做事,不能随心所欲地测试。
  • 测试活动中的文档问题处理:如果发现需要文档不完善或者不准确,要及时地与项目经理进行沟通协调,在邮件中详细地把不完善不准确的地方描述出来,并提出自己的意见。

五、测试类型相关

  • 黑盒测试与白盒测试区别:黑盒测试不考虑程序内部结构,只关注输入输出,把程序当作一个黑盒。而白盒测试是基于代码的测试,根据软件内部的逻辑结构分析来进行测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量。
  • 其他测试类型:像兼容性测试,主要检查软件在不同的硬件平台、软件平台上是否可以正常的运行;功能测试则根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求等。

声明:本文网友投稿,观点仅代表作者本人,不代表鲸选型赞同其观点或证实其描述。

联系我们

在线咨询:点击这里给我发消息

微信号:

工作日:9:30-18:30,节假日休息