测试需求分析与测试用例设计

一、 界面中的控件知识

1. 文本框和密码框

  • 单选按钮
    • 框架标题/提示文本不缺失且正确;
    • 各个选项正确;
    • 执行同一功能的多个单选按钮只能选中一个;
    • 要有默认选中项;
    • 一般不能取消选中;
    • 存入后台的数据正确。
  • 组合列表框/下拉列表
    • 通常单选,条目内容要正确(没有多余/错放项、缺少项);
    • 横向显示要完整;
    • 条目功能要正确实现;
    • 组合列表框中可能允许输入数据。
  • 数码框(up-down 控件)
    • 能使用上下箭头控制数字变动;
    • 数字有范围限制;
    • 数字自动循环或者到达边界时停止;
      • 复选框
        • 选项正确;
        • 可以不选、任意选一个、任意选多个、全选;
        • 可以取消选中;
          • 每一个复选框功能都正确实现。

      4. 列表框

      • 窗口标题
        • 不缺失;
        • 显示正确。
      • 选项卡
        • ctrl+tab 切换
      • 默认焦点
      • Tab 顺序
      • 快捷键/热键
        • 使用 ctrl 或 alt+其它字母
        • 同一窗口、界面或菜单中不能重复

      二、大纲法分解功能

      1. 大纲法

      大纲法主要用于对软件进行功能拆分。

      • 模块
        • 包含多个功能操作的对象或功能集合,如文件(菜单)等。
      • 功能点/功能
        • 能独立完成一件事或一个业务。如新建、打开等。
      • 业务流程
        • 软件为了完成业务或完成核心功能所经历的步骤。
      • 业务逻辑
        • 是对业务的不同处理方式。
      • 业务规则
        • 如要求用户名只能用英文,5-11 个字符等。
      • 案例
        • 即时贴程序部分需求说明
        • 便签的数量最多为 50 个
        • 便签标题字数最多为 40 个字节
        • 便签的正文文字数量最多为 200 个
        • 年份只能设置在 1900-2100 之间

      2. 开始编写测试需求分析

      将功能拆分与整理的需求信息写入测试需求分析

      1.6 场景法练习

      2.2 等价类划分核心思想

      • 通过需求分析,找出程序的输入域。
      • 将输入域划分成若干类。
      • 每一类中选取代表性数据等价于这一类中的其他值。

      2.3 等价类划分的步骤

      • 需求分析
      • 划分等价类(根据需求,有效等价类、无效等价类)并细化(根据计算机知识)

      2.4 等价类划分案例

    • 要求用户名由字母或数字组成,必须由字母开头,不包含特殊字符,最大长度为 12
    • 日期文本框

    3. 边界值分析

    3.1 一个缺陷

3.2 边界值分析的思想与步骤

  • 分析需求,找出边界。
  • 写出边界值
    • 最小值
    • 小于最小值
    • 最大值
    • 大于最大值

3.3 边界值分析案例

  • 两位数加法计算器的边界值
    • -99
    • -100
    • 99
    • 100

3.4 为什么分析边界值

看看下面的代码有错误吗br>

  • 练习题讲解
    • 测试知识的储备
      • 了解开发原理

          4.2 决策表的分析步骤

          • 需求分析
            • 分析输入和输出
              • 用等价类划分分析输入的各种情况、输出的各种情况
          • 画判定表
          • 分析与简化判定表

          4.3 决策表案例

          • 分析输入条件和输出条件
            • 输入
              • 输入 1:
                • 条件 1: 0
                • 条件 2: -99
                • 条件 3: X
                • 条件 4: X>99
              • 输入 2:
                • 条件 1: 0
                • 条件 2: -99
                • 条件 3: X
                • 条件 4: X>99
            • 输出
              • 正确计算
              • 错误提示
          • 优化策略
            • 测试基本功能的保留;
            • 一个输入错误,另外输入无所谓,可以整合;
            • 所有输入都要错误过。
          • 工资分为年薪制,月薪制,两者互斥
          • 错误程度分为普通和严重,两者可同时具备
          • 年薪制员工犯普通错误扣工资 2%,犯严重错误扣工资 6%
          • 月薪制员工犯普通错误扣工资 4%,犯严重错误扣工资 8%

          4.5 决策表的适用范围

          适用于多种输入的存在组合情况时。

          4.6 决策表的局限性与优化策略

          导致测试量爆炸。

        5. 错误推测

        5.1 测试若干原则回顾

        • 测试不是验证软件正确,而是攻击软件,发现错误。
        • 测试要时刻保持怀疑的态度,具有缺陷预防意识。
        • 测试要寻求系统设计、功能设计的弱点。
        • 设计负面的、异常的测试,如考虑错误的或者异常的输入,往往可以发现更多的软
          件缺陷。

        5.2 什么是错误推测

        在测试程序时,人们可以根据经验或直觉推测程序中可能存在的各种错误,从而有针对 性地编写检查这些错误的测试方法。

        • 错误推测分类
          • 输入数据测试方面
          • 输出数据测试方面
          • 数据结构测试方面
          • 文件系统方面

        5.3 输入数据方面的错误推测

        5.3.1 输入非法数据

        • 一般用于键盘输入数据时。
        • 测试方法
          • 输入非法类型
          • 输入非法范围/长度
          • 输入非法格式
        • 注意
          • 错误信息的检查:需要额外考虑错误提示信息的内容
          • 错误信息和错误要对应一致
          • 错误信息不能为空
          • 错误信息的内容不能只是错误代码,不能包含开发信息
          • 错误信息不能中英文混合
          • 适用于有默认值的地方。
          • 测试方法
            • 接受软件的默认值
            • 键入空值
            • 将默认值改为另外一个值
            • 将默认值改为另外一个值,再变为空值

          5.3.3 输入特殊字符(集)

          • 适用于不能输入有特殊含义的字符时。
          • 测试方法
            • 根据被测软件所处的操作系统、程序设计语言、后台数据库以及具体业务 等信息列出表格,进行讨论,标明哪些需要测试,哪些需要剔除。
            • 了解具体行业知识,具体问题具体分析。
          • 案例
            • 文件命名下列特殊字符(33 个)
              • 不能使用: / | “ : * com0-com9,lpt0-lpt9,prn、aux、nul、 con。
          • 思考

            5.3.5 通过复制粘贴强制输入程序不允许输入的数据

            5.4 输出数据方面的错误推测

            5.4.1 同一个输入产生多种输出

            • 案例
              • 输入:一个电话打来
              • 输出:
                • 状态一:等待接听。
                • 状态二:占线。
                • 状态三:停机。
                • 状态四:无法接通。
                • 状态五:关机。
                • 状态六:空 。
            • 测试方法
              • 详细测试每一种输出,不要有遗漏。
              • 熟悉被测软件业务知识,阅读各种程序文档,明确输入可能产生的输出, 列出关于程序输入于输出的一个列表,然后进行测试。
            • 思考
              • QQ 中有没有类似的测试/li>

            5.4.2 验证输出结果的正确性

          • 测试方法
            • 输入非法值或很大与很小数据,强制结果产生上溢或下溢。

          5.5.3 操作数和操作符不符

          四、需求评审

          1. 意义

          • 对软件需求进行正确性的检查。
          • 保证软件需求的可测试性。
          • 通过产品需求文档的评审,与市场、产品、开发等各部门相关人员沟通,使得大家 认识一致,避免在后期产生不同的理解,引起争吵。
          • 通过产品需求文档的评审,更好地理解产品的功能性和非功能性需求
          • 在需求文档评审通过后,测试的目标和范围就确定了。虽然此后会有需求的变更, 但可以得到有效的控制,这样可降低测试的风险。
          • 评审是否完成是以需求文档获得多方“邮件确认”或“签字”通过为标志的。这不 应该只体现在“签字”形式上,更重要的是达到下面的结果。
            • 所有参与方达成一致。
            • 已发现的问题被阐述清楚、被修正。

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

上一篇 2020年7月3日
下一篇 2020年7月3日

相关推荐