【软件测试】白盒测试与黑盒测试的区别(不同)

黑盒测试是将被测试软件看做一个黑盒子,只考虑系统的输入和输出,完全不考虑程序内部逻辑结构和处理过程。白盒测试是将黑盒子打开,研究源代码和程序内部的逻辑结构。

黑盒测试的依据是各阶段的需求规格说明。白盒测试的依据是程序源代码。

黑盒测试通常用于软件的系统测试、验收测试、功能和性能测试等方面,由测试人员来完成。白盒测试一般主要在单元测试、集成测试中采用,通常由开发人员来完成。

【软件测试】软件测试的基本流程(一般步骤)

(1)单元测试(也称模块测试):针对软件设计的基本单元——程序模块,进行正确性检验的测试工作。目的在于发现各个模块内部可能存在的各种差错。单元测试需要从程序内部结构出发设计测试用例,多个模块可以平行、独立地进行测试;

(2)集成测试(也称组装测试,联合测试):在单元测试的基础上,将所有模块按设计要求集成在一起进行测试,以检验总体设计中各模块间的接口设计问题、模块之间的相互影响、上层模块存在的各种差错及全局数据结构对系统的影响等方面。

(3)确认测试(也称验收测试,有效性测试):主要检验软件的功能和性能是否与需求说明书中的规定一致。

(4)系统测试:将软件系统作为一个元素,放入整个实际的计算机系统中,与计算机硬件、其他软件、使用人员等系统元素结合在一起,在实际使用环境下进行综合全面的测试。

【软件测试】软件测试需要遵守哪些原则

  1. 软件测试应追溯到用户需求
  2. 穷尽测试是不可能的
  3. 应具有良好的测试态度
    • 避免测试自己的程序
    • 增量测试
    • 测试应该分级
    • 测试应有重点
    • 避免测试的随意性
  4. 测试结果的处理原则
    • 对待缺陷进行复查和确认
    • 测试结果的全面检查
    • 出错统计和分析
    • 妥善保存测试过程文档

【软件测试】α测试和β测试的区别

  • α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。
  • β测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。

【软件测试】对比V模型、W模型、H模型,简述他们各自的特点

V模型:

测试活动的展开次序正好与开发的次序相反,动态测试的行为与开发行为相对应。忽略了测试的对象不应该仅仅包括程序,没有明确指出对需求、设计的测试。

W模型:

补充了V模型中忽略的内容,强调了测试计划等工作的先行和对系统需求和系统设计的测试;与V模型相同,没有对软件测试的流程进行说明。

特点:

  • 强调尽早测试
  • 强调不断测试
  • 体现静态测试

H模型:

将测试活动完全独立出来,形成完全独立的流程。

  • 体现了”尽早测试、不断测试“的原则
  • 体现了测试流程的完整性
  • 体现测试流程的独立性
  • 充分体现了测试过程(而非技术)的复杂性,强调了过程管理的重要性