background image

软件测试面试问题集锦

1、测试的定义
  
软件测试是软件工程过程的一个重要阶段,是在软件升级发布之前对软件开发各阶段产品
的最终检查,是为了保证软件开发产品的正确性、完全性和一致性而检测软件错误、修正软
件错误的过程。
 
软件测试是:
  
1)程序测试是为了发现错误而执行程序的过程
  
2)测试是为了证明程序有错,而不是证明程序无错误;
 
3)一个好的测试用例是在于它能发现至今未发现的错误;
 
4)一个成功的测试是发现了至今未发现的错误的测试。
 
软件开发的目的:
  
是开发出实现用户需求的高质量、高性能的软件产品,而软件测试是以检查软件功能和
其他非功能特性为核心,是软件质量保证的关键,也是成功实现软件开发目标的重要保障。
 
  
2、测试的种类
2.1
从测试方法角度分为:
2.1.1
黑盒测试:
  是功能测试、数据驱动测试或基于规格说明的测试。在不考虑程序内部结构和内部特性的情
况下,测试者依据该程序功能上的输入输出关系,或是程序的外部特性来设计和选择测试
用例,推断程序编码的正确性。
  
黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程
序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序
接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能
适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻
辑结构,主要针对软件界面和软件功能进行测试。
 
 
1.等价类划分
(1)划分等价类。 
① 如果某个输入条件规定了取值范围或值的个数。则可确定一个合理的等价类(输入值或数
在此范围内

)和两个不合理等价类(输入值或个数小于这个范围的最小值或大于这个范围的