测试设计相关

最近在整理测试设计相关资料,所以也在对这方面的知识做归纳总结。测试分析方法包括:基于场景、需求、逻辑的测试分析,基于风险的测试分析,基于经验的测试分析,基于模型的测试分析。除此之外还有不同的分析方法,这里只选择这几个讲解,其他的分析都可以归纳为这里面内容的补充。

  1. 基于场景、需求、逻辑的测试分析
    基于场景的分析:
    基于场景的分析有两种情况,第一种是对需求进行分析测试的情况,第二种是针对需求给出的场景进行分析。
    第一种情况:测试需求分析(即需求测试),曾经我在测试一个跟踪用户位置的功能的时候,对这个模块的采用五维检视法做过需求分析,这个过程明确了功能实现的价值以及检验是否存在需求漏洞,考虑的是需求没有考虑到的地方,通过前期对需求的检视,减少后期需求的改动。
    第二种情况:对已有的需求的场景进行分析,采用的是场景流的方法。现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设用例场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有基本流和备选流。
    基于需求的分析:可采用继承性分析(即继承了上个迭代的哪些新特性)、测试类型分析(依据质量模型:功能性、可靠性、易用性、效率、可维护性、可移植性方面考虑)、功能交互分析(功能间的顺序、交互,资源、数据的互相影响)、关联图分析(主要是从用户角度出发,确定相互联系的数据流和行为,对功能交互进行补充)
    基于逻辑的分析:可采用5W+1H的方式对模块进行认识,然后从数据流入手,关注数据的进出,包括连接建立的初始化过程。逻辑分析了解清楚逻辑之后,可以产出模块测试指导书,关于逻辑指导书的内容之前有去听过一堂课,并且回来做了一个总结分享,后续会做专门的文章内容讲解。
  2. 基于风险的测试分析
    基于风险的测试分析,其实是每个测试人员都应该掌握的方式,有助于正确评估模块的进度和质量。但是往往这种风险的测试分析在管理方向上用的更多。
    风险识别的方法:独立评估(可以从资源、技术、质量、沟通、第三方相关的方面去评估风险,如下图的风险模板)、专家判断、经验教训、风险研讨会、头脑风暴法、问卷调查法。
    在这里插入图片描述
    风险应对:这里主要借鉴pmp里的风险应对方法,风险减轻、避免、转移、接受或者启动应急计划。这里要特别注意风险应对之后带来的其他风险,比如常见的修复缺陷之后引发了其他的缺陷。
  3. 基于经验的测试分析
    基于经验的测试分析,前提是存在相关方面的经验,因此我们在测试工作的过程中要注意经验的总结和积累,穷尽测试不可能,因此软件产品发布之后,总是能在用户使用现场发现不同类型的缺陷,通过分析和归类这些缺陷,同样也有助于完善测试类型。 最后可以产出一份较为通用的专项检查点,来帮助大家做好测试过程中的专项检查。
  4. 基于模型的测试分析
    通常需要从以下几个层次来进行设计:用户层、应用层、功能层、子系统层、协议层。
    1. 用户层:
      主要是面向产品最终的使用操作者的测试。这里重点突出的是在操作者角度上,测试系统对用户支持的情况,用户界面的规范性、友好性、可操作性,以及数据的安全性。主要包括:
      用户支持测试:用户手册、使用帮助、支持客户的其他产品技术手册是否正确、是否易于理解、是否人性化。
      用户界面测试:在确保用户界面能够通过测试对象控件或入口得到相应访问的情况下,测试用户界面的风格是否满足用户要求,例如:界面是否美观、界面是否直观、操作是否友好、是否人性化、易操作性是否较好。
      可维护性测试:可维护性是系统软、硬件实施和维护功能的方便性。目的是降低维护功能对系统正常运行带来的影响。例如:对支持远程维护系统的功能或工具的测试。
      安全性测试:这里的安全性主要包括了两部分:数据的安全性和操作的安全性。核实只有规格规定的数据才可以访问系统,其他不符合规格的数据不能够访问系统;核实只有规格规定的操作权限才可以访问系统,其他不符合规格的操作权限不能够访问系统;

    2. 应用层:针对产品工程应用或行业应用的测试。重点站在系统应用的角度,模拟实际应用环境,对系统的兼容性、可靠性、性能等进行的测试。
      系统性能测试:针对整个系统的测试,包含并发性能测试、负载测试、压力测试、强度测试、破坏性测试。并发性能测试是评估系统交易或业务在渐增式并发情况下处理瓶颈以及能够接收业务的性能过程;强度测试是在资源情况低的情况下,找出因资源不足或资源争用而导致的错误;破坏性测试重点关注超出系统正常负荷N倍情况下,错误出现状态和出现比率以及错误的恢复能力。
      系统可靠性、稳定性测试:一定负荷的长期使用环境下,系统可靠性、稳定性。
      系统兼容性测试:系统中软件与各种硬件设备兼容性,与操作系统兼容性、与支撑软件的兼容性。
      系统组网测试:组网环境下,系统软件对接入设备的支持情况。包括功能实现及群集性能。
      系统安装升级测试:安装测试的目的是确保该软件在正常和异常的不同情况下进行安装时都能按预期目标来处理。例如,正常情况下,第一次安装或升级、完整的或自定义的安装都能进行安装。异常情况包括磁盘空间不足、缺少目录创建权限等。还有一个目的是核实软件在安装后可立即正常运行。另外对安装手册、安装脚本等也需要关注。

    3. 功能层:针对产品具体功能实现的测试。
      业务功能的覆盖:关注需求规格定义的功能系统是否都已实现。
      业务功能的分解:通过对系统进行黑盒分析,分解测试项及每个测试项关注的测试类型。
      业务功能的组合:主要关注相关联的功能项的组合功能的实现情况。
      业务功能的冲突:业务功能间存在的功能冲突情况。比如:共享资源访问等。

    4. 子系统层:针对产品内部结构性能的测试。关注子系统内部的性能,模块间接口的瓶颈。
      单个子系统的性能:应用层关注的是整个系统各种软、硬件、接口配合情况下的整体性能,这里关注单个系统。
      子系统间的接口瓶颈:例如:子系统间通讯请求包的并发瓶颈。
      子系统间的相互影响:子系统的工作状态变化对其他子系统的影响。

    5. 协议/指标层
      针对系统支持的协议、指标的测试。
      协议一致性测试
      协议互通测试

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值