软件测试基础——理论知识

(一)软件测试的过程:

1、分析测试需求

  • 测试人员对用户的需求进行分析,了解软件要做什么,怎么做,进而确定将来怎么 测试。
  • 测试第一个任务是需求分析
    • 测试需求分析要做好
    • 时刻都要提醒自己考虑用户需求
    • 制造缺陷的罪魁祸首不是程序员
    • 做好需求评审
    • 审查所做的内容是否符合用户的需求

2 编写测试计划

  • 测试负责人编写测试计划;
  • 测试计划的内容
    包含产品概述、测试范围/测试区域/测试项、 测试目标/被测特征、测试优先 级、测试配置/测试资源(硬件、软件、人力、技术等)、测试周期、进度安 排(测试任务、人员安排)、 测试策略、测试方法/途径、测试交流、风险分 析、测试标准、需交付文档等内容。

3 设计与编写测试用例

  • 设计用例主要反映在编写测试点上;
  • 根据公司格式或者选择一些模板编写测试用例。

4 执行测试

  • 搭建测试环境;
  • 执行测试用例,记录测试事件;
  • 提交和跟踪缺陷。

5 评估与总结

  • 分析实际测试与计划的偏差;
  • 收集并提交各种测试文档和数据,对数据进行分析;
  • 给出是否继续测试还是终止测试结论;
  • 总结经验教训

(二)常见的测试模型

  • V 模型
  • W 模型
  • H 模型
  • X 模型
  • 前置模型
  • 敏捷测试模型

V 模型

软件测试基础——理论知识_第1张图片
(1)优点:
- V 模型明确地将测试分为不同的级别或阶段。
- 每个阶段都与开发的各阶段相对应。
- V 模型的测试策略包括低层测试和高层测试,低层测试是为了源代码的正确 性,高层测试是为了整个系统满足用户的需求。

(2)缺点:

  • 测试是开发之后的一个阶段。实际应用中容易导致需求阶段的错误一直到最后 系统测试阶段才被发现。
  • 测试的对象就是程序本身。忽视了测试活动对需求分析,系统设计等活动的验证和确认的功能,直到后期的验收测试才被发现。
  • 过程是线性的、顺序的,不能反复和迭代。

W 模型

软件测试基础——理论知识_第2张图片
(1)优点:

  • W 模型从 V 模型演化过来,实际上开发是 V,测试是并行的 V,测试与开发 同步进行,有利于尽早地全面的发现问题。
  • 测试伴随整个软件开发周期。
  • 测试的对象不仅仅是程序,需求、设计等同样要测试。

(2)缺点:

  • W 模型中,需求、设计、编码等活动被视为串行的,同时,测试和开发活动 也保持着一种线性的前后关系,上一阶段完全结束,才可正式开始下一个阶段 工作。这样就无法支持迭代的开发模型。

H 模型

软件测试基础——理论知识_第3张图片

  • 它将测试活动完全独立出来,形成一个完全独立的流程,将测试准备活动和测 试执行活动清晰地体现出来。测试贯穿产品整个生命周期,与其他流程并发地 进行。
  • 软件测试不仅仅指测试的执行,还包括很多其他的活动(计划、需求分析、用 例设计、环境搭建、提交缺陷、评估总结等)。
  • 当某个测试时间点就绪时,软件测试即从测试准备阶段进入测试执行阶段。
  • 软件测试要尽早准备,尽早执行。
  • 软件测试是根据被测物的不同而分层次进行的。不同层次的测试活动可以是按 照某个次序先后进行的,但也可能是反复的。

X 模型 (不需要掌握)

与W模型一样,为解决V模型的缺点而提出的。
软件测试基础——理论知识_第4张图片

前置模型

软件测试基础——理论知识_第5张图片

敏捷测试模型

  • 敏捷测试是协同测试的一种形式,程序员结对编程,程序员分饰测试员角色, 敏捷测试是连续测试。
  • 敏捷测试侧重单元测试和验收测试。单元测试的过程是先设计单元测试用例, 然后进行编码,之后执行测试。
  • 敏捷测试强调客户参与,单元测试通过之后代码集成到代码库中,再由客户进 行验收测试。

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