【面试题Part 2 】:测试面试题

 #####这部分内容是比较开放的,有些芝士即使不是必问的但是理解一些还是会帮助到更深入了解测试工作。

#######总共【40】个问题

----------------------------------1 测试要做什么-------------------------

在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否满足程序设计要求进行评估

首先,保证产品质量。正确实现了所设计的需求,确保在上线日前达到上线标准

发现软件的缺陷,降低风险,性能可靠、安全、满足期望的兼容性

关注交互以及界面设计

------------------------------------2 测试的方法--------------------------

  • 程序执行状态:

静态测试:代码检查、静态结构分析、代码质量度量

动态测试:构造测试实例、执行程序、分析程序输出结果

  • 具体实现算法细节和系统内部结构的相关情况

黑盒、白盒、灰盒

  • 程序执行方式

人工测试

自动化测试

-------------------------3 介绍单元测试、集成测试、系统测试、验收测试、回归测试-----------------

  • 单元测试:对软件中最小的可测单元进行的检查和验证工作。视具体情况,函数、类、一个窗口、一个菜单。

用来判断某个特定条件下某个特定函数的行为,也就是证明这段代码的行为与期望的一致。

如果在一个软件开发的早期引入单元测试,就能极大地降低修复BUG的成本,降低风险。在开发费用低的情况下得到更稳定的软件。

通常是白盒的,对代码风格和规则、程序设计和结构、业务逻辑等进行静态测试,及早发现和解决不易显现的错误。

  • 集成测试:在单元测试基础上,将所有模块按照设计要求组装成子系统或系统,进行集成测试。

测试的内同包括单元间的接口以及集成后的功能,通常采用增量集成。

4个阶段:计划,设计,实现,执行阶段

依据是《软件概要设计规格说明》

实施方案:

自顶向下集成,即首先集成主模块,然后按照控制层次结构向下进行集成,隶属于主模块的模块按照深度优先或者广度优先的方式集成到整个结构中去;

自底向上:从程序模块结构中的最底层模块开始组装和测试,不需要使用桩模块,因为对于一个给定层次的模块其子模块的组装测试在它之前就完成了。

  • 系统测试:将经过集成测试的软件和各种依赖的资源结合起来,在实际运行环境下的测试,是基于系统整体需求说明书的黑盒类测试,包括功能、性能、界面、可靠性、兼容性等

包括功能测试:测试软件系统的功能是否正确,正确性是软件最重要的质量因素

健壮性测试:测试软件系统在异常情况下能否正常运行的能力。

常见的系统测试有恢复测试、安全测试和压力测试

计划-设计-执行-缺陷管理与改错

  • 回归测试:修改了旧代码后,重新测试确认修改没有引入新的错误或者导致其他代码产生错误。各个阶段都会进行大量回归测试

重复以前的全部或部分相同测试;新加入测试的模块;重心以关键性模块为核心

兼顾效率和有效性

  • 验收测试:是经过前三个测试之后,产品发布前的测试活动。相关的用户或独立的开发人员根据测试计划和结果对系统进行测试和验收。让系统用户决定是否接收系统,确定产品是否满足合同或者用户所规定的的需求

常用方法:正式测试

非正式验收或Alpha测试:由最终用户组织执行的,用户在开发者的场所中进行,没有特定的测试用例

Beta测试:软件的多个用户在一个或多个用户的实际使用环境下进行测试,开发者不在现场,最主观

  • 总结:对软件完整功能进行测试的系统测试很重要,已经完成了单元测试和集成测试,面向系统整体的规格说明书,并进行验证

 

--------------------------------------4 测试的V模型、W模型和H模型-----------------------------

V模型:编码为界限,分为开发和测试,串行关系

W模型:开发测试并行,但上一阶段未完成无法进入下一阶段,不支持敏捷开发

H模型:测试活动被独立出来,要求高。灵活性

 

------------------------------------------------5 黑盒测试----------------------------------

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

从用户角度考察功能性需求

黑盒测试用例设计方法:等价类划分、边界值分析、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法

测试计划-设计-开发-执行-评估

 

-----------------------------------------------6 白盒测试----------------------------------------

  • 是针对被测单元内部是如何进行工作的测试。白盒测试法检查程序内部逻辑结构,对所有的逻辑路径进行测试,是一种穷举路径的测试方法,但即使每条路径都测试过了也可能存在错误。
  • 白盒测试的方法:总体上分为静态测试和动态测试两大类

代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖、程序变异

逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、条件/判定覆盖、条件组合覆盖、路径覆盖

  • 原则:一个模块中的
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值