51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 3183|回复: 0
打印 上一主题 下一主题

[原创] 测试用例编写的模板

[复制链接]
  • TA的每日心情
    无聊
    昨天 09:32
  • 签到天数: 399 天

    连续签到: 5 天

    [LV.9]测试副司令

    跳转到指定楼层
    1#
    发表于 2018-12-7 16:44:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    我们先要进行软件测试用例的分析和设计,然后写出软件测试的内容,最后按照软件测试写作方法,落实到文档中,写的好的测试用例不仅方便自己和别人查看,而且能帮助设计的时候考虑的更周全,因此测试用例的写作和测试用例的设计一样,也是非常重要的。
    一、通用测试用例八要素
    • 用例编号;
    • 测试项目;
    • 测试标题;
    • 重要级别;
    • 预置条件;
    • 测试输入;
    • 操作步骤;
    • 预期输出。


    二、具体分析通用测试用例八要素
    1、用例编号
    一般是数字和字符组合成的字符串,可以包括(下划线、单词缩写、数字等等),但是需要注意的是,尽量不要写汉语拼音,因为拼音的意义可能有好几种,有可能会导致乱码;
    用例编号具有唯一性和易识别性。( 比如说我们唯一标识一个人:中国-上海市-xx区xx号-xx楼--xx室-xxx.这样标识的话就具有唯一性了。)


    不同阶段的测试用例的用例编号有不同的规则:
    (1)系统测试用例:产品编号-ST-系统测试项名-系统测试子项名-XXX
    (2)集成测试用例:产品编号-IT-系统测试项名-系统测试子项名-XXX
    (3)单元测试用例:产品编号-UT-系统测试项名-系统测试子项名-XXX

    其中产品编号也叫项目标识,每个公司都有若干不同的项目或者产品,如何来区分它们呢?这就需要有产品编号了,每个公司都有自己的一套定义产品编号的规则,并且每个现有产品的编号已经制定好了,直接拿过来用就可以了。
      
    • 产品编号后的ST、IT、UT分别对应系统测试阶段、集成测试阶段、单元测试阶段。实际[url=]工作[/url]中有些公司会将产品编号以及测试阶段省略。
    • 测试阶段后面就是测试项目名了,对应的是较大较系统的测试点。
    • 测试项目名后面就是测试子项目名,有些测试是没有子项目名的,只有当测试项力度比较大的时候才会有成都市子项 (比如说:我们要测试用户能否成功登录这个功能,那我们就可以分为很多个子项,qq登录、邮箱登录等等)。
    • 测试子项名后面就是具体的用例编号了,可以是数字:01、001、002等等。


    2、测试项目
    测试项目对应的就是测试用例中的子项名。
    (1)系统测试用例:对应一个功能点(功能测试)、性能指标(性能测试)、界面中控件(GUI测试)等等。
    (2)集成测试用例:对应集成后的模块功能或者接口功能。
    (3)单元测试用例:对应函数名。

    3、测试标题
    测试标题考虑的是如何来完成测试项目,或者说从哪个角度来对测试项目进行测试,有的公司也取名为测试目的。
    测试标题一定要简单、概要;体现测试的出发点和关注点。
      
    4、重要级别
    用例的重要级别一般分成三个级别:高、中、低。
    高级别:对应保证系统基本功能、核心业务、重要特性、实际使用频率比较高的用例;
    中级别:对应重要程度介于高和低之间的测试用例;
    低级别:对应实际使用频率不高,对系统业务功能影响比较大的模块或功能的测试用例。
      
    **举个[url=]手机[/url]的例子:**
    (1)高级别需求:正常通话功能、短信功能;
    (2)中级别需求:拍照、联系人、MP3;
    (3)低级别需求:计步、收音机等等。
    还需注意的是:针对**正常情况**的测试用例的重要级别比针对**异常情况**的测试用例的重要级别要高。

    5、预置条件
    测试用例在执行前需要满足一些前提条件,否则测试用例是无法执行的,这些前提条件就是预置条件。
    预置条件分为两种情况:

    (1)环境的设置。
    例如:测试word打开文件的功能,预置条件就是:需要提前准备被打开的文件;
    例如:登录成功的预置条件就是:该用户名已经注册过了。
    例如:购买商品成功的预置条件就是:后台已经配置好商品、发货区域、以及支付方式了。
      
    (2)先要运行的其他用例,有些[url=]操作系统[/url]会比较复杂,如果都是从最开始的操作开始会导致用例写起来比较麻烦,这样可以在预置条件中设定要先运行的测试用例,后面的用例只需要写后续的操作就可以了。
    例如:对自动取款机进行测试,有针对的输入账户信息的测试,有对输入取钱金额的测试,后者的预置条件就可以写成输入正确账户信息的测试用例。
    注:具体预置条件的设置不同的公司会有自己的规定,比如有的公司是不允许第二种情况出现的。
      
    6、测试输入
    用例执行过程中需要加工的外部信息,根据软件测试用例的具体情况,有手工输入、文件、[url=]数据库[/url]记录等。
    禁止过多描述性语言,若为文件,会有提示选择路径,最好写具体,让别人易懂易操作。
      
    7、操作步骤
    明确描述测试执行过程中具体的操作步骤,以方便测试执行人员可以根据该操作步骤完成测试用例执行。
      
    8、预期输出
    我们在写预期输出的时候可以从以下三个方面来考虑:
    (1)界面显示:在操作步骤完成之后,界面会有显示;比如说我们测试用户登录功能,界面可能会显示登录成功或者登录失败。
    (2)数据库的变化:在操作步骤完成之后,数据库中的记录会发生相应的变化,比如删除功能的测试,点击删除后,数据库中该记录会被删除。 
    (3)相关信息的变化:在操作步骤执行完成后,一些和被测对象相关的信息会发生变化,比如:注销功能的测试,点击注销后,以前能访问的页面将无法再访问。
     
    三、通用用例写作实战
      范例:注册新会员。
      *用户名:
      *请设置密码:
      *请确认密码:
      *验证手机/或邮箱:
      *短信验证码:
      我已阅读并同意《xxxxxx协议》
      用户名和密码的要求是:6~10位字母、数字、下划线的组合。
      邮箱支持:XXX@qq.com , xxx@163.com
      需要同意协议。
      以上都为必填项。
      下面我们针对新用户注册成功和注册失败写正反两条用例。
      注册成功
      1、用例编号: User_ IT_Reg- New _001 (Reg-New位测试项,测试的是新用户注册功能,其中的Reg是Register单词的缩写);
      2、测试项目: 测试新用户注册功能;
      3、测试标题:符合条件注册新会员;
      4、重要级别:高;
      5、预置条件:该用户名没有被注册过;
      6、测试输入:
      (1)用户名:paomo_123;
      (2)设置密码:paomo_456;
      (3)确认密码:paomo_456;
      (4)邮箱地址:1234567@qq.com
      (5)短信验证码;
      (6)在同意协议处打钩。
      7、测试步骤:
      (1) 打开注册网页;
      (2) 输入合法参数;
      (3) 点击注册;
      8、预期结果:注册成功。
      注册失败
      1、用例编号:User_ IT_Re- New _002;
      2、测试项目:测试新用户注册功能;
      3、测试标题:不符合条件不能注册新会员;
      4、重要级别:中 (上面提到过,正常情况的测试用例的重要级别 要高于 异常情况的测试用例重要级别);
      5、预置条件:该用户名没有被注册过;
      6、测试输入:
      (1)用户名:paomo123  (用户名不符合要求);
      (2)设置密码:paomo456  (密码不符合要求);
      (3)确认密码:paomo456;
      (4)邮箱地址:1234567@qq.com;
      (5)短信验证码;
      (6)在同意协议处打钩。
      7、测试步骤:
      (1)打开注册网页;
      (2)输入不合法参数;
      (3)点击注册。
      8、预期结果:用户名不符,无法注册。


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏1
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-4-20 03:10 , Processed in 0.061190 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表