测试学习小白必备篇 ——软件测试的基础知识

测试学习小白必备篇 -- 软件测试的基础知识

  • 软件测试基础知识
    • 一.测试的定义(测试是什么)
    • 二.测试的目的(为什么要测试)
    • 三.测试的原则(七个原则)
    • 四.测试的对象(七个对象)
    • 五.测试的级别(测试阶段)
    • 六.测试的类型(四种)
    • 七.测试的方法(七种方法)

软件测试基础知识

一.测试的定义(测试是什么)

  1. 通过人工或自动的手段,对被测对象进行检测的活动
  2. 目的在于发现被检测对象是否满足用户的需求,或者搞清楚实际结果与预期结果之间的差异
  3. 需要理解什么软件 (源代码,用户手册,配置数据)

二.测试的目的(为什么要测试)

  1. 发现被测对象与用户需求之间的差异(俗称找bug)
  2. 通过测试活动发现并解决缺陷,增加人们对被测对象的质量信息
  3. 通过测试活动,获取被测对象的质量信息,为决策提供数据依据
  4. 通过测试活动,预防缺陷,从而降低项目或产品的风险

三.测试的原则(七个原则)

  1. 测试证明软件存在缺陷
  2. 不可能执行穷尽测试
  3. 测试应尽尽早启动,尽早介入
  4. 测试存在群集现象
  5. 杀虫剂悖论
  6. 不同的测试活动依赖不同的测试背景
  7. 不存在缺陷的谬论

四.测试的对象(七个对象)

  1. 软件源代码
  2. 与软件源代码匹配的文档
  3. 支撑软件源代码运行的配置数据
  4. 需求阶段 :需求文档->测试需求文档是否正确实现了用户的需求
  5. 系统设计阶段->概要设计文档->详细设计文档->是否有设计或逻辑上的错误
  6. 编码阶段->测试源代码->发现编程上的错误
  7. 系统测试阶段->被测对象是否满足用户需求

五.测试的级别(测试阶段)

级别 解释
单元测试 针对被测系统最小的组成单元实施的测试活动,一般是类或函数,有可能是最小的功能单元
集成测试 针对组件/单元与组件/单元之间的接口实施的测试活动,验证接口设计是否与设计相符,分三种集成:1.函数间集成,2.模块间集成,3.子系统间集成
系统测试 将通过集成测试的软件,部署在真实的用户环境下执行测试
验收测试 以用户为主的测试,验收组应该由项目组成员,用户代表组成

验收测试又分为3种,解析如下表

类型 解释
α测试 由用户在开发环境下执行的测试活动,开发者在测试人员身边,发现问题并解决;在不受环境下执行测试
β测试 开发者不在测试人员身边,发现问题由专人统一收集,再由专研人员进行收集
UAT测试 用户接受度测试;一般商业用户验证系统可用性进行测试

六.测试的类型(四种)

1.功能性测试
在指定的使用条件下,使用被测对象,验证其是否满足用户显性或隐性需求。
测试关注点:

  1. 是否有不正确或遗漏或多余的功能
  2. 满足系统显性或隐性需求
  3. 是否对输入输出做出一个正确的响应,输出结果是否能够正确的显示

2.性能测试

  1. 通过模拟被测对象运行业务压力或使用场景,验证被测对象是否满足预先设计的性能指标
  2. 验证系统是否具有宣称的能力
  3. 了解测试系统典型的场景,并具有明确的性能目标
  4. 要求在真实的环境下实施

3.安全性测试
测试被测对象的安全保护机制保护系统不受非法侵入,能够接受正确授权的操作

4.兼容性测试
验证被测对象在不同的操作系统,硬件信息等环境下的运行情况

七.测试的方法(七种方法)

类型 解释
黑盒测试 不关注被测对象内部结构,仅从用户需求考虑,是否满足用户显性需求
白盒测试 内部结构测试,逻辑驱动测试
灰盒测试 既关注被测对象的外部特性,又关注其内部设计
静态测试 不执行被测对象程序,不运行被测对象的测试方法
动态测试 执行被测对象,进行的检测活动
手工测试 最传统的方法通过测试工程师试用,验证被测对象是否满足用户需求
自动化测试 通过自动化测试工具,或脚本语言自动化完成测试过程

你可能感兴趣的:(软件测试)