51Testing软件测试论坛

标题: 转载自他人的很好的用例设计经验 [打印本页]

作者: 零度的测试    时间: 2009-3-30 17:32
标题: 转载自他人的很好的用例设计经验
测试用例设计方法---场景VS功能
1 目的
       站在用户的角度,以用户的使用逻辑及操作习惯为出发点,结合功能用例的设计方法,使用例设计更符合用户使用逻辑更具有可执行性,从而最大程度上覆盖用户需求。
2 使用者
       用例设计、执行及热爱测试的人员
3 测试用例设计方法
       按照不同的规则可以将测试用例分为四个部分:场景用例(用户场景)、系统用例(用户场景的细化)、功能用例(基于业务规则、界面)、设计指标(基于环境、性能、安全等)。
用户场景用例:按照用户的实际操作与业务逻辑设计用例,不必涉及很复杂的操作或逻辑,把用户最常用的、正常的 操作流程作为一个场景设计测试用例
系统用例:是用户场景的细化,包含正常场景、分支场景和异常场景,是两个或多个有关联的功能组合而成的场景。
功能用例:用于验证各功能点的业务规则,包括界面元素和各功能的业务规则验证。主要针对单个功能点。
设计指标:系统所需要达到的各级指标。主要包含环境、性能、安全等方面的指标。

第一步:用户场景用例(关键字:模拟用户实际操作)

描述用户的主要业务目标,包含完整的系统级场景和模拟用户实际操作的不同场景,几个功能点的组合也算是用户场景,这类的用例不宜过多。


第二步:系统各角色的系统用例
将系统划分多个角色,再将每个角色分解为多个任务,每个任务就是一个系统用例。系统用例分别正常流程、异常流程,分支流程,以场景的形式描述。
系统用例命名原则:正常(异常、分支)流程_描述


第三步:功能用例
描述单点功能的逻辑规则及页面元素,分层描述逻辑规则,对逻辑规则细化可直接作为用例的操作步骤描述。


第四步:设计指标
设计指标包含三种类型的用例:环境测试用例、性能测试用例、安全性用例。
环境测试用例可依照操作系统版本,浏览器版本不同划分为多个用例。每个用例下可直接调用已有的用户场景用例、系统用例、功能用例,可无须单独编写用例。

4 用例设计规则
规则如下:
1 每个用例需要选择优先级,分为高、中、低三种。
  每个用例需要关联项目。

2 需要特别强调的是,用户场景用例,一定要脱离系统提供功能,站在用户角度来设计用例,从用户实际可能的操作场景考虑。

3用户场景及系统用例的划分粒度。比如:注册登录,其本身也算一个用户场景,但不是用户关心的业务目标,所以把其划分为系统用例中。

4 系统用例与功能用例的划分粒度。功能点是测试用例设计的基本单位,是一个不可再细分的完整操作,可以基于一个表单或者多个表单,依照产品具体需求进行划分。系统用例侧重于场景,是两个或两个以上多个功能点的组合。
我的测试历程2--写给初次写用例的朋友

________________________________________
        
________________________________________

写给初次写用例的朋友:(下面都是自己对用例编写的一点感受或建议,写的不对的地方请多多指教)
有很多朋友初次写用例,不知道从何下手,虽然有的公司给出了相关说明文档,但是写起来还是不能得心应手,编写用例方法有很多种:功能导向用例(边界值、等价类等等),用户导向用例(场景法),用户、功能相结合导向用例……那么对于初次编写用例,应该怎样高效率的编写用例?应该注意点什么?
一、功能导向用例是按照系统需要达到的每一个功能,进行编写用例,这样的用例着重点在功能实现上,而没有考虑到每个功能之间的关联,因而虽然用例已经达到功能覆盖,却不一定达到逻辑覆盖,因而这种方法通常会和其他方法结合使用。功能导向用例是每个用例编写者前期最常用的方法,网络上可以搜索到很多相关文章,这里因为时间关系就不写了。(还有一个原因就是可能写的很烂,所以就不拿出来丢人现眼了,呵呵)
二、用户导向用例是按照用户的习惯,将用户使用系统的每个目的作为一个目标,以每个目标实现为基点设计测试用例,这样的方法在B/S结构中使用比较广泛(我一直从事B/S测试所以适不适用C/S我不清楚,,但因为我喜欢玩网游,所以对C/S软件也不陌生,个人觉得也可以应用,现在的网络游戏(非竞技类)以多任务为主导,比如魔兽世界、梦幻西游、大话西游、完美国际、QQ三国等等,那么可以将完成每个任务作为目标设计测试用例)但是设计这一类用例,初写者,可能会产生很多困惑(下面写一下我第一次写的时候有哪些困惑,并针对这些困惑,后来采取了怎样的解决方案)
1、编写用例的第一步我该做什么?
理解系统,首先站在测试的角度深入理解系统的每个功能与系统业务逻辑,画出业务逻辑图(即:系统能做什么)。
其次站在用户的角度,列出用户使用系统的目的(即:用户使用这个系统,想干什么?)
2、怎样确定用户目标?
   不能确定用户目标,可能由2方面原因造成: a>对系统不够熟悉,b>不了解用户背景。对于第一点原因,那是你自己的原因,只有回过去头看文档了,对于第二点原因,可以从‘系统能做什么’推算出‘用户可以做什么’然后再总结出‘用户可能想做什么’,当然这样做的前提是你对系统已非常熟悉。
下面以51testing论坛为例,因为刚刚进测试论坛,所以对这类系统不太熟悉,只能简单的阐述一下过程,很多地方没全写(比如:角色、角色能做什么等等),这里只是阐述一种方法,大家可以自己动手写一下:
1、首先确定系统使用角色:
a、管理员用户:
b、普通用户:A)版主:见习版主、**版主……
B)水手:菜鸟、大虾……
    ……
2、确定这些角色能做什么:
……
菜鸟:看帖、发帖、回帖、修改自己发的帖……
……
3、将自己放在用户角度设计用例:
场景1:我不是51testing会员,我想发帖子
对问题进行扩展:我不是会员(怎样成为会员),我想发帖子(在哪里发帖子、发什么样的帖子、发完后怎样查看帖子、怎样修改帖子、怎样查看别人的跟帖、怎样回帖(并送鲜花、砸鸡蛋)、怎样退出论坛)

分析一下步骤:用户注册、登录、进入相关主题、发帖、查看帖、编辑帖、查看跟帖、回帖、退出论坛
下面可以设计用例了:
1、将用户场景作为用例概述
2、将用户目标转化为用例所要达到的目标:a注册为会员,可发帖子。  b非会员不可发帖子(根据具体情况而定)。
3、以问题扩展为步骤设计测试用例:
1.1我不是51testing会员,我想发帖子
目标:a注册为会员,可发帖子。  b非会员不可发帖子
Step 1 注册成为会员
详细步骤:1)在IE浏览器输入:www.51testing.com
                    2)点击【**】→点击【**】→点击【**】……点击【注册】,进入测试论坛注册页面(因为没打开51论坛,不记得步骤,所以用**代替,实际写用例过程应按照实际步骤写)
          3)填写注册信息,点击【提交】
预期结果:
1)成功打开51testing主页
2)成功进入论坛注册页面
3)A)填写的信息符合规则,注册成功,点击进入论坛链接直接进入论坛,未点击进入论坛链接5秒后自动进入论坛
B)填写的信息不符合规则,注册失败,有相关提示(具体提示应和输入错误类型对应,这里不详细写了)
Step 2 登录论坛,进入相关主题(根据实际,进入相应主题)
步骤:1)……
              2)……
预期结果:
              1)……
              2)……
Step 3 发表帖
……
Step 4查看帖
……
Step 5 编辑帖
……
Step 6查看跟帖
……
Step 7 回帖
……
Step 8 退出论坛
1.2 我是会员,我想有自己的BLOG
目标:会员可以成功开通自己的BLOG
前提:该用户已经注册为51testing会员(前提,应按照实际情况写,没有前提就不写)
Step1:……
步骤:……
期望结果:……
Step 2:……
……
……
1.3我是会员,我想改变我的页面风格
1.4我是会员,我想给好友发消息
……
(列出用户登录论坛的各种可能的目的,然后按照1.1的形式编写对应用例)
功能用例就不写了,网络上可以找到很多功能用例的编写方法
我的测试历程3---用例设计思路(安装/卸载)

________________________________________
   
________________________________________

我一直从事B/S测试工作,因为对网游(主要是C/S结构的)比较感兴趣,所以现在开始学习游戏开发方面的知识(刚开始看),比如opengl、、VC++游戏设计入门、windows游戏编程大师技巧、数据结构算法等,为以后转游戏测试做准备,既然做C/S测试,安装/卸载是测试的很重要的部分之一,所以利用空闲时间写一下自己的安装/卸载用例设计思路,练习一下,如果你觉得写的不好或者觉得有需要补充的地方,请大家提出来,大家共同学习,共同进步,谢谢!

安装卸载用例设计思路(界面、易用方面的没写)

一、安装路径:
   1、缺省路径安装
   2、自定义安装路径:
   a) 通过浏览,选择自定义路径
   b) 手动输入路径(存在的路径、不存在的路径)
   c)非C盘安装
   d)指定路径下已有同名文件
   e) 中文路径(中文路径、中英文混合路径)
   f) 包含空格的路径(空格、下划线等合法路径)
   g) 非法路径(路径中输入特殊字符,看处理是否正确)

二、安装环境:
   1、没安装过
   2、已安装过老版本(系统正在使用、系统未使用)
   3、已安装了最新版本
   4、卸载系统重新安装
   5、安装一半,异常退出(比如在线安装断网、本地安装点取消、断电等),可重新安装
   6、磁盘空间不足
   7、删除了部分文件(可正常安装、修复、卸载系统)
   8、操作系统Windows(WindowsXP、Windows2000、Windows2003、Vista等,区分专业版、服务器版以及不同补丁环境)、Unix 、 Macintosh 、 Linux等
   9、杀毒软件:金山、江民、瑞星、诺顿、卡巴斯基、安全卫士等(根据需求,测试相应的环境)
   10、标准配置安装、推荐配置安装、最低配置安装、未达到最低配置安装(硬件环境)

三、安装类型:

     1、标准安装

     2、推荐安装

     3、自定义安装

四、安装完成
   1、安装成功,检查版本信息是否正确
   2、安装完成,文件属性为非只读
   3、安装完成,快捷方式检查,创建快捷方式正确
   4、双击快捷方式,可以正常打开系统
   5、打开系统所在目录,双击打开(右键打开),可正常使用系统
   6、安装过程中,任意步点击取消,成功取消安装
   7、卸载过程中,任意步点击取消,成功取消卸载
   8、各杀毒软件防火墙操作系统可正常运行
   9、不同分辨率下,系统可正常运行

五、卸载方式:(1、正常卸载后检查文件是否全部卸载,注册表是否有残余信息,控制面板中检查系统是否被删除。2、异常卸载是否正确处理 )
   1、添加/删除程序中卸载
   2、开始→程序,快捷方式中卸载
   3、使用安装程序卸载
   4、使用系统提供的卸载文件卸载
   5、直接删除文件夹(删除后,验证再次安装是否报错)
   6、系统正在使用,卸载系统

六、网络环境:(针对以来网络的系统;比如网游等)
   1、不同上网方式是否能正常使用系统(比如:专线上网、代理(需要密码,不需要密码)上网等)

2、不同网络提供商提供的网络环境下是否能正常使用系统:电信、网通、百灵、铁通等(根据需求测对应的网络提供商)

七、用户类型:(针对需要序列号的安装)

1、体验用户(体验期/超过体验期,卸载后安装)

2、付费用户(付费期/超过付费期,卸载后安装)
作者: chenyujoe    时间: 2009-4-26 16:01
标题: 嗯,受教了。
学习
作者: l276921    时间: 2009-4-26 20:51
非常感谢
正愁不知道怎么写安装卸载的用例哈!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2