当前位置 博文首页 > 无限迭代中......:软件测试——Fault、Error和Failure简单例题D

    无限迭代中......:软件测试——Fault、Error和Failure简单例题D

    作者:[db:作者] 时间:2021-07-19 22:28

    基本概念

    Fault--故障

    编码过程中,存在于软件中的静态缺陷 (Defect) ?

    Error--错误

    软件运行过程中,运行fault后,导致系统出现failure的内部状态。

    Failure--失效

    error传到软件外部,用户和测试人员能够观测的到的失效行为。

    指不完全符合给定的需求,实际结果或行为与期望结果或行为之间的偏差。

    当一个系统不能执行所要求的功能时,即为Failure

    问题描述

    构造一个尽可能简单的程序P(包含两个Fualts: F1和F2),同时构造3个输入t1, t2和t3,使得
    1. t1单独执行到F1并且发现Failure;
    2. t2单独执行到F2并且发现Failure;
    3. t3同时执行到F1和F2,并且能够对F1产生Error,但没有Failure。
    //请标明详细注释

    解决方案

    int max(int a,int b,int c)
    {
        int max = a;
        if(max <= b)
            max = a; //fault1,赋值错误
        if(max <= c)
            return max; //fault2,没有赋新的最大值
        return max;
    }
    

    TESTING?

    [t1]当测试用例为 test:a = 1,b?= 2,c?= 0的时候

    期望值:2?实际值:1

    [t2]当测试用例为 test:a = 2,b?= 1,c?= 3的时候

    期望值:.3实际值:2

    [t3]当测试用例为 test:a = 2,b?= 3,c?= 2的时候

    期望值:.3?实际值:2

    参考文章

    软件测试中的Fault、Error和Failure

    软件测试的几个术语(故障--Fault、错误--Error、失效--Failure)

    软件测试01

    cs