• 深入浅出:经典的软件测试用例方法总结(转)


     简单的测试用例

    1.测试项目:电梯

    需求测试:查看电梯使用说明书、安全说明书等;

    界面测试:查看电梯外观;

    功能测试:测试电梯能否实现正常的上升和下降功能,电梯的按钮是否都可以用;

    电梯门的打开,关闭是否正常;报警装置是否可用,报警电话是否可用;

    通风状况如何.突然停电时的情况;是否有手机信号;

    比如说上升途中的响应。电梯本来在1楼,如果有人按18楼,那么电梯在上升到5楼的时候,有人按了10楼,这时候是否会在10楼先停下来;

    电梯下降到10层时显示满员,此时若8层有人等待电梯,是否在8层停;

    可靠性:门关上的一刹那出现障碍物,同时按关门和开门按钮,点击当前楼层号码,多次点击同一楼层的号码等等;同时按上键和下键会怎样;

    易用性:电梯的按钮的设计是否符合一般人使用的习惯;

    用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述;

    压力测试:看电梯的最大限度的承受重量,在负载过重时报警装置是否有提醒,在一定时间内不断的让电梯上升或下降,最大负载下平稳运行的最长时间。

    2.测试项目:杯子

    需求测试:查看杯子使用说明书;

    界面测试:查看杯子外观;

    功能度:用水杯装水看漏不漏;水能不能被喝到;

    安全性:杯子有没有毒或细菌;

    可靠性:杯子从不同高度落下的损坏程度;

    可移植性:杯子在不同的地方、温度等环境下是否都可以正常使用;

    兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等;

    易用性:杯子是否烫手、是否有防滑措施、是否方便饮用;

    用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述;

    疲劳测试:将杯子盛上水(案例一)放24 小时检查泄漏时间和情况;盛上汽油(案例二)放24 小时检查泄漏时间和情况等;

    压力测试:用根针并在针上面不断加重量,看压强多大时会穿透;

    跌落测试: 杯子加包装( 有填充物), 在多高的情况摔下不破损;

    震动测试:杯子加包装( 有填充物), 六面震动, 检查产品是否能应对恶劣的铁路 公路 航空运输;

    测试数据:测试数据具体编写此处略(最讨厌写测试数据了)。其中应用到:场景法、等价类划分法、因果图法、错误推测法、边界值法等方法;

    期望输出:该期望输出需查阅国标、行标以及使用用户的需求。

    3.测试题目:桌子

    需求测试:查看国家相关标准;

    功能:桌子是办公或者放置用的,首先考虑桌子的面积大小是否适度;

    界面:桌子的版面是否平滑,桌子有没有凹凸不平的地方;

    安全:桌子肯定有它的支撑点,若支撑点不稳,容易摔坏物品,使用起来也不方便;

    易用:桌子的移动性如何,它的重量是否合适;

    可靠性:将桌子推倒后,再检查桌子是否很容易被损坏;

    性能:将很重的物品放在桌子上,看它最大承受的重量是多少。

    4.测试题目:洗衣机

    功能测试:该洗衣机是否能正常的洗衣服;

    需求测试:查看洗衣机的使用说明书和安全说明书等;

    性能测试:使用时用电量如何,是否满足用户需求;

    界面测试:洗衣机的外观是否满足客户的需求;

    易用测试: 该洗衣机是否容易操作;

    兼用性测试:该洗衣机除了能洗衣服以外还能洗别的东西;

    安全性测试:该洗衣机通电以后人接触以后是否有电;

    负载测试:通过逐步增加系统负载,最终确定在什么负载条件下系统性能将处于崩溃状态,以此获得系统能提供的最大服务;

    压力测试:通过逐步增加系统负载,最终确定在什么负载条件下系统性能将处于崩溃状态,以此获得系统能提供的最大服务级别的测试;

    稳定性测试:加到一定的衣服然后过一段时间看洗衣机是否正常工作。

    常用的测试案例方法

    1、等价类划分

    问:某程序规定:"输入三个整数 a、 b、 c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算 … "。用等价类划分方法为该程序进行测试用例设计。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。)

    解:

    分析题目中给出和隐含的对输入条件的要求:

    (1)整数

    (2)三个数

    (3)非零数

    (4)正数

    (5)两边之和大于第三边

    (6)等腰

    (7)等边

    如果 a、 b 、 c满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:

    1)如果不满足条件(5),则程序输出为 " 非三角形 " 。

    2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。

    3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。

    4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。

    列出等价类表并编号

    等价类表

    覆盖有效等价类的测试用例:

    a b c 覆盖等价类号码

    3 4 5 (1)--(7)

    4 4 5 (1)--(7),(8)

    4 5 5 (1)--(7),(9)

    5 4 5 (1)--(7),(10)

    4 4 4 (1)--(7),(11)

    覆盖无效等价类的测试用例:

    无效等价类

    2、边界值分析法

    NextDate函数的边界值分析测试用例

    在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。

    NextDate函数的边界值分析

    3、错误推测法

    测试一个对线性表(比如数组)进行排序的程序,可推测列出以下几项需要特别测试的情况:

    I. 输入的线性表为空表;

    II. 表中只含有一个元素;

    III. 输入表中所有元素已排好序;

    IV. 输入表已按逆序排好;

    V. 输入表中部分或全部元素相同。

    4、因果图法

    有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。

    1) 分析这一段说明,列出原因和结果

    原因:

    1.售货机有零钱找

    2.投入1元硬币

    3.投入5角硬币

    4.押下橙汁按钮

    5.押下啤酒按钮

    结果:

    21.售货机〖零钱找完〗灯亮

    22.退还1元硬币

    23.退还5角硬币

    24.送出橙汁饮料

    25.送出啤酒饮料

    2)画出因果图,如图所示。所有原因结点列在左边,所有结果结点列在右边。建立中间结点,表示处理的中间状态。中间结点:

    11. 投入1元硬币且押下饮料按钮

    12. 押下〖橙汁〗或〖啤酒〗的按钮

    13. 应当找5角零钱并且售货机有零钱找

    14. 钱已付清

    饮料自动售货机因果图

    3)转换成判定表:

    判定表

    5、判定表驱动分析方法

    问题要求:”……对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……” 。这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义。请建立判定表。

    解答:

    ①确定规则的个数:这里有3个条件,每个条件有两个取值,故应有2*2*2=8种规则。

    ②列出所有的条件茬和动作桩:

    条件茬和动作桩

    ③填入条件项。可从最后1行条件项开始,逐行向上填满。如第三行是:Y N Y N Y N Y N,第二行是:Y Y N N Y Y N N等等。

    ④填入动作桩和动作顶。这样便得到形如图的初始判定表。

    初始判定表

    初始判定表

    ⑤化简。合并相似规则后得到图。

  • 相关阅读:
    FastJson 配置Long转String类型 , 解决前后端交互, id过长,失去精度的问题
    idea使用技巧大全
    多线程下载工具
    https url 下载
    Jquery ajax请求格式
    AQS之可重入锁ReentrantLock原理
    整理所学之HashMap | 第二篇
    数据结构:哈希表例子
    整理所学之HashMap | 第一篇
    设计模式 | 第三篇:装饰者模式
  • 原文地址:https://www.cnblogs.com/xiaosong0206/p/13212260.html
Copyright © 2020-2023  润新知