实用性测试(Pragmatistic Testing)

Seeing is not believing!Testing is believing!做个实用主义测试者!

翻译 启发测试策略模型收藏

启发测试策略模型

陈能技

2007-8-12

 

原文:Heuristic Test Strategy Model - James Bach

 

这个测试策略启发模型是测试策略的设计模式的子集。目的是提醒测试员在创建测试时应该考虑什么东西。最终目的是为了专业测试员能否对它进行个性化和使用在对话讨论中,自我指导学习和更充分的有意识的测试。

Project Environment 项目环境

包括资源、约束、项目中促使我们进行测试并且妨碍我们做好测试工作的其它力量。确保充分利用你拥有的资源,同时考虑你的约束。

 

Product Elements 产品元素

产品元素是你打算要测试的东西。软件是一个复杂和不可见的东西,所以你要小心地确保你确实检查了产品的所有需要检查的东西。

 

Quality Criteria 质量标准

质量标准是作为测试员需要用来判定产品是否存在问题的规则、价值和来源。质量标准是多面的,通常是隐藏的或自相矛盾的。

 

Test Techniques 测试方法

测试方法是用于创建测试的策略。所有的方法都包含某种对项目环境、产品元素和质量标准的分析在里面。

 

Perceived Quality 预期的质量

预期的质量是测试的结果。你永远也不知道软件产品的真正质量,但是通过各种各样的测试的应用,你能得到一定的评估。

 

 

General Test Techniques 普通测试方法

Function Testing 功能测试

测试你能测试的东西

1、  识别出产品能做的事情(功能和子功能)。

2、  决定你是通过什么知道一个功能能工作。

3、  测试每个功能,每次测试其中一个。

4、  确保每个功能做了它应该做的事情,并且没有做它不应该做的事情。

 

Domain Testing 范围测试

在数据上做文章

1、  查找产品处理的任何数据。在查看输入的同时要看输出。

2、  决定要测试那些数据。考虑边界值、特殊字符、合适的值、不正确的值或有代表性的值。

3、  考虑组合数据在一起进行数据。

 

Stress Testing 压力测试

对产品施加压力

1、  看哪些功能或子系统在大数据量或限制资源的情况下会崩溃

2、  识别出跟这些子系统和功能相关的数据量和资源

3、  选择或产生大数据量或创造资源限制条件,例如:大而复杂的数据结构、高负载、长时间运行、施加大量测试用例、低内存等

 

Flow Testing 流程测试

一个接着一个来做

1、  定义测试用例或顶层用例用于覆盖活动与活动之间的流程

2、  在测试过程中不要重启系统

3、  改变时间或顺序,并尝试并发线程

 

Scenario Testing 场景测试

为完成某个系统与用户之间的故事而测试

1、  开始之前先考虑产品要发生的所有事情

2、  设计各种测试,包含有意义的、复杂的与系统的交互

3、  一个好的测试场景是一个吸引人的故事,讲述某人做了某些与系统相关的事情

 

Claims Testing 需求测试

检查每个需求的满足程度

1、  识别相关材料中指出的关于产品的各种要求(明示的或暗示的)。

2、  分析各种需求并澄清隐晦的需求。

3、  检查每个关于产品的需求都成立。

4、  如果你基于一个明确的需求规格说明来测试,检查产品与其是否一致。

 

User Testing 用户测试

引入用户

1、  识别和对用户角色进行分类。

2、  确定每个角色会执行哪些用例,怎样执行,对他们产生怎样的价值。

3、  获取真实的用户数据,或者把真正的用户引入测试中来。

4、  否则,系统地模拟一个用户(把自己想象成用户)

5、  有效的用户测试是包含各种用户和各种角色,而不仅仅是一个。

 

Risk Testing 风险测试

想象它有问题,然后去找出来

1、  这个产品可能会有哪些类型的问题?

2、  哪种问题是最关键的,专注于这些问题。

3、  如果问题存在,你怎样找出来。

4、  列个关于这些有趣问题的清单,然后设计相关的测试来揭露这些问题。

5、  请教专家、查阅设计文档、过往的bug报告,或应用风险启发,都有可能帮助你揭露这些问题。

 

Automatic Testing 自动化测试

运行一万个不同的测试

1、  寻找自动产生很多测试的机会

2、  开发一个自动化的、快速进化的机制

3、  编写一个程序来产生、执行和评价测试

 

 

Project Environment 项目环境

 

􀂉 Customers. 项目的客户

􀂉 Information. 关于产品的信息或需要测试的信息

􀂉 Developer Relations.你跟程序员相处得怎样

􀂉 Test Team. 任何执行测试或支持测试的人

􀂉 Equipment & Tools. 硬件、软件、文档等测试需要的资源

􀂉 Schedule. 顺序、持续时间、项目时间的同步等

􀂉 Test Items. 被测的产品

􀂉 Deliverables. 测试项目可见的输出

 

 

Product Elements 产品元素

􀂉 Structure. 组成产品的所有东西

􀂉 Functions. 产品所做的任何事情

􀂉 Data. 产品处理的所有数据

􀂉 Platform. 产品依赖的所有外部的东西

􀂉 Operations. 产品的使用方式

􀂉 Time. 产品与时间之间的关系,例如:输入输出的速度、并发速度等

 

 

Quality Criteria Categories 质量标准分类

 

Operational Criteria 操作层面的标准

􀂉 Capability. 能否执行所需的功能?

􀂉 Reliability. 能否在各种所需的情况下工作良好并能抵抗错误?

􀂉 Usability. 真正用户来使用产品时是否容易使用?

􀂉 Security. 产品保护并抵抗未经授权用户的入侵的能力如何?

􀂉 Scalability. 产品的扩展性如何?

􀂉 Performance. 性能如何,快不快?

􀂉 Installability. 安装到目标平台的容易程度如何?

􀂉 Compatibility. 与其他产品的兼容性如何?

 

Development Criteria 开发标准

􀂉 Supportability. 对产品的用户如何有效支持?

􀂉 Testability. 产品能多有效地进行测试?

􀂉 Maintainability. 怎样有效地修复、增强产品?

􀂉 Portability. 在其他地方如何有效地重用技术

􀂉 Localizability. 如何有效地移植到另外国家的语言?

 

 

 

 

发表于 @ 2007年08月12日 13:56:00|评论(loading...)

新一篇: 测试计划评估模型 | 旧一篇: 新技术项目的SQA

用户操作
[即时聊天] [发私信] [加为好友]
陈能技
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
陈能技的公告
文章分类
收藏
    测试网站
    iTestWare专业软件测试资讯网
    开源测试
    朋友的博客
    Jackei的博客
    小蚂蚁的博客
    阳光的博客
    我的博客
    我的51testing博客
    存档
    Csdn Blog version 3.1a
    Copyright © 陈能技