软件测试基础—-测试策略、手段、方法

软件测试策略、手段、方法

  • 测试策略
    • 单元测试
    • 集成测试
      • 1. 集成测试的模式:
      • 2. 自顶向下集成测试:
      • 3.自底向上集成测试
      • 4. 混合策略
    • 确认测试
    • 系统测试
    • 验收测试
    • 回归测试
  • 测试手段
    • 手工测试
    • 自动化测试
    • UI自动化测试
    • 接口自动化测试
    • 单元自动化测试
  • 测试方法
    • 黑盒测试
    • 白盒测试
    • 灰盒测试

测试策略

单元测试

单元测试是对已实现的软件的最小单元进行测试,以保证构成软件的各个单元的质量。

在单元测试活动中,强调被测试对象的独立性。通过单元测试,希望达到下列一些目标:

  • 单元体现了其特定的功能,如果需要,返回正确的值。
  • 单元的运行能够覆盖预先设定好的各种逻辑。
  • 在单元工作过程中,其内部数据能够保持完整性,包括全局变量的处理、内部数据的形式、内容及相巨关系等不发生错误。
  • 可以接受正确数据,也能处理非法数据,在数据边界条件上,单元也能够正确工作。
  • 该单元的算法合理,性能良好。

单元的质量是整个软件质量的基础,所以充分的单元测试是非常必要的。

通过单元测试可以更早地发现缺陷,缩短开发周期、降低软件成本。 多数缺陷在单元测试中很容易被发现,但如果没有进行单元测试,那么这些缺陷在后期测试时就会隐藏得很深而难以发现最终导致测试周期延长、开发成本急剧增加。

单元测试方案是根据详细设计文档来编制的。

集成测试

1. 集成测试的模式:

  • 非渐增式测试模式:
    先分别测试每个模块,再把所有模式按设计要求放在一起结合成所要的程序,也常被称为大棒模式。
  • 渐增式模式:
    把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试。

业界普遍采用渐增式测试模式,也就是持续集成的策略。 使用持续集成,绝大多数模块之间的接口缺陷,在其引入的第一天可能就会被发现。软件开发中各个模块可能不是同时完成的,测试人员可以尽可能早地集成已完成的模块,有利于尽早发现缺陷, 避免像大棒模式那样一下子涌现大量的缺陷。

2. 自顶向下集成测试:

自顶向下集成法是从主控模块开始,沿着软件的控制层次向下移动,逐渐把各个模块结合起来。在自顶向下组装过程中,可以使用深度优先策略或宽度优先策略

自顶向下集方法示意图:↓↓↓↓↓

自底向上集成测试一般不需要创建桩程序,但需要创建驱动程序。

自底向上集成测试能够在最早时间完成对基础函数的测试,其他模块可以更早地调用这些基础函数,有利于提高开发效率,缩短开发周期。但控制能力强、影响面越广的上层模块,其测试时间会靠后若在测试后期才发现这些模块有问题,则修改这些缺陷就会很困难,或者修改的影响面很广,从而存在很大的风险。

4. 混合策略

在实际测试过程中,一般会将自顶向下集成测试和自底向上集成测试有机地结合起来,形成混合测试策略来完成软件系统的集成测试,这种混合测试策略可以发挥自顶向下集成测试和自底向上集成测试的优点,避免其缺点,从而有效地提高测试效率。

三明治集成方法示意图:↓↓↓↓↓

确认测试

确认测试又称有效性测试,是在模拟的环境下,运用黑盒测试的方法,验证被测软件是否满足需求规格说明书中列出的需求,即验证软件的功能是否与用户的要求一致。

软件的功能要求在软件需求规格说明书中已经明确规定,即需求规格说明书包含的用户需求信息就是软件确认测试的基础。

有效性测试和软件配置审查是确认测试需要完成的两项工作,这两项工作在验收测试之前就已完成。

系统测试

系统测试是验证软件产品是否符合这些质量特性要求的测试。系统测试包括性能测试、安全测试和兼容性测试等。

  • 系统测试是公司内部进行的测试

UI自动化测试

UI ( User Interface ,用户界面,亦称使用者界面)是指对软件的人机交互、操作逻辑、界面美观的整体设计是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受形式之间的转换。UI层的自动化测试工具非常多,比较主流的是QTP.Robot Framework, Watir、 Selenium等,其中Selenium是目前比较常用的UI自动化测试工具。

接口自动化测试

软件测试基础----测试策略、手段、方法

文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览211996 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年8月16日
下一篇 2021年8月16日

相关推荐