测试用例与输入数据的设计方法

简介:
测试用例 的设计是测试设计的重要内容,关于测试用例的设计方法,当前不少出版的测试书和发表的测试 文章 ,不少存在着表述错误,主要是把测试用例中的输入数据的设计方法与测试用例的设计方法混为一谈,对测试初学者和测试用例设计人员产生误导。

  这种错误的主要表现举例如下:

  测试用例的设计方法包括:

  ◆ 等价类划分法

  ◆ 边界值法

  ◆ 功能图与判定表法

  ◆ 错误推测法

  ◆ 用户场景法

  ◆ ......

  其实,测试用例中输入数据的设计方法只是测试用例设计方法的一个子集,上面列出的集中方法都是确定黑盒测试用例的输入测试数据的一般方法,而不是测试用例的设计方法。

  除了确定输入数据之外,测试用例的设计还包括如何确定测试用例的设计策略,如何组织设计用例,如何从测试需求等文档创建完整的测试用例。

  对测试执行人员来说,测试用例的表示内容包括以下几个方面:

  ◆ 测试用例的测试目标

  ◆ 测试用例的被测功能点描述

  ◆ 测试用例的测试运行环境

  ◆ 测试用例的执行方法(包括测试步骤,输入测试数据或测试脚本)

  ◆ 测试期望的结果

  ◆ 执行测试的实际结果

  ◆ 其他辅助说明

  乍看起来有点像测试策划(计划)考虑的因素。但是测试用例的设计和测试计划的设计关注点不同,测试计划考虑的宏观和全面些,而测试用例考虑的更窄。

  设计测试用例首先要考虑以下几个问题:

  ◆ 为什么要设计测试用例?

  ◆ 谁来写测试用例?这些写测试用例的人的测试技术和对被测试产品了得有多深入?

  ◆ 测试用例写给谁看,多少人将试用测试用到?

  ◆ 分配给写测试用例的时间是多长?要安排几个人来写?

  ◆ 怎么在测试用例的成本、质量和效率方面达到平衡?

   只有回答了这些问题,才能确定测试用例的具体写作方法和表现形式。一般而言,公司里分配写作测试用例的时间并不长,而且提供的文档也不全面,所以写测试 用例要符合测试部门的当前现状和项目的测试特点,综合考虑,所以看起来有点像测试计划的某些内容,但是对问题的细化程度不一样。

  测试用例的设计是一项复杂的测试工作测试用例的设计方法需要考虑测试的目标,被测试软件的特性,测试者人力资源的技术和能力,测试组织形式,测试进度、测试成本等多个方面。

  在设计测试用例时,可以综合运用以下方法:

  ◆ 根据被测软件的功能和特性点设计测试用例:

    ● 根据被测试功能点设计测试用例

    ● 根据软件性能指标设计测试用例

    ● 根据软件的兼容性要求设计测试用例

    ● 根据软件的国际化用户要求设计国际化测试用例

    ● 根据...设计...用例

  ◆ 根据软件的组成元素设计测试用例

    ● 设计软件设计用例

    ● 设计联机帮助和文档手册的设计用例

    ● 设计软件的模版等数据文件的测试用例

  ◆ 根据软件的开发阶段(里程碑)设计测试用例

    ● 单元测试设计用例

    ● 集成测试设计用例

    ● 系统测试设计用例

    ● 验收测试设计用例

  ◆ 根据...设计测试用例

    ● ......

  具体到设计每个测试用例而言,可以考虑如下:

   ◆ 根据被测的最小目标,确定测试用例的测试目标

  ◆ 根据用户使用环境确定测试环境

  ◆ 根据以下因素确定测试用例的步骤

    ● 用户使用软件的步骤或者特定场景,确定测试执行步骤地具体内容

    ● 执行者对产品的熟悉程度确定步骤的详细或粗略程度

    ● 被测特性的复杂性也决定步骤的详细或粗略程度

    ● 测试用例的执行方法(手工测试或自动化测试)确定步骤地内容表示

    ● 自动测试用例要编写和调试测试脚本,手工测试给出执行步骤

    ● ......

  ◆ 根据设计规格说明书确定期望的测试用例执行结果

  ◆ ......

  确定测试用例的输入数据确实对于测试用例非常重要,它决定着测试用例的执行效果和效率,但是确定输入测试数据只是设计测试用例的一个步骤,而不是全部。因此,不能把测试用例的设计方法等同于测试用例数据的方法。


本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/
目录
相关文章
|
10月前
|
数据采集 监控 机器人
浅谈网页端IM技术及相关测试方法实践(包括WebSocket性能测试)
最开始转转的客服系统体系如IM、工单以及机器人等都是使用第三方的产品。但第三方产品对于转转的业务,以及客服的效率等都产生了诸多限制,所以我们决定自研替换第三方系统。下面主要分享一下网页端IM技术及相关测试方法,我们先从了解IM系统和WebSocket开始。
239 4
|
1月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
192 1
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
如何让AI更“聪明”?VLM模型的优化策略与测试方法全解析​
本文系统解析视觉语言模型(VLM)的核心机制、推理优化、评测方法与挑战。涵盖多模态对齐、KV Cache优化、性能测试及主流基准,助你全面掌握VLM技术前沿。建议点赞收藏,深入学习。
390 8
|
1月前
|
存储 测试技术 API
数据驱动开发软件测试脚本
今天刚提交了我的新作《带着ChatGPT玩转软件开发》给出版社,在写作期间跟着ChatGPT学到许多新知识。下面分享数据驱动开发软件测试脚本。
44 0
|
4月前
|
测试技术
软考软件评测师——可靠性测试测试方法
软件可靠性是指软件在规定条件和时间内完成预定功能的能力,受运行环境、软件规模、内部结构、开发方法及可靠性投入等因素影响。失效概率指软件运行中出现失效的可能性,可靠度为不发生失效的概率,平均无失效时间(MTTF)体现软件可靠程度。案例分析显示,嵌入式软件需满足高可靠性要求,如机载软件的可靠度需达99.99%以上,通过定量指标评估其是否达标。
|
4月前
|
消息中间件 缓存 监控
性能测试怎么做?方法、流程与核心要点解析
本文系统阐述了性能测试的核心方法论、实施流程、问题定位优化及报告编写规范。涵盖五大测试类型(负载验证、极限压力、基准比对、持续稳定性、弹性扩展)与七项关键指标,详解各阶段任务如需求分析、场景设计和环境搭建,并提供常见瓶颈识别与优化实战案例。最后规范测试报告内容框架与数据可视化建议,为企业级实践提出建立基线库、自动化回归和全链路压测体系等建议,助力高效开展性能测试工作。
|
12月前
|
测试技术 API 项目管理
API测试方法
【10月更文挑战第18天】API测试方法
308 1
|
9月前
|
分布式计算 Shell MaxCompute
odps测试表及大量数据构建测试
odps测试表及大量数据构建测试
|
8月前
|
编解码 缓存 Prometheus
「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!
本期内容为「ximagine」频道《显示器测试流程》的规范及标准,我们主要使用Calman、DisplayCAL、i1Profiler等软件及CA410、Spyder X、i1Pro 2等设备,是我们目前制作内容数据的重要来源,我们深知所做的仍是比较表面的活儿,和工程师、科研人员相比有着不小的差距,测试并不复杂,但是相当繁琐,收集整理测试无不花费大量时间精力,内容不完善或者有错误的地方,希望大佬指出我们好改进!
540 16
「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!

热门文章

最新文章