2201_75989173 2023-11-24 10:37 采纳率: 86.7%
浏览 12
已结题

白盒测试逻辑覆盖-软件测试

img

算法开始。输入A和B值,首先分别判断A和B是否为正数:如果都是正数,那么计算AB数值之和减去10的数值;如果是非正数,那么计算AB之和加上10的数值。对于新计算得到的数值,再次判断是否为负数:如果是负数,将其设定为0;如果是非负数,原样输出结果。算法结束。
要求:
1)画出该算法的流程图
2)标出所有的分支
3)写出该算法的代码(Hbuilder)
4)选用白盒测试的逻辑覆盖方法中的一种设计相应的测试用例,确保能够覆盖所有分支

  • 写回答

1条回答 默认 最新

  • 有梦想的攻城狮 新星创作者: 后端开发技术领域 2023-11-24 13:01
    关注

    以下是该算法的流程图:

    开始
    输入AB
    判断A是否为正数,是则执行以下操作,否则跳到步骤6
    判断B是否为正数,是则执行以下操作,否则跳到步骤8
    计算AB数值之和减去10的值,存入临时变量temp
    计算得到的数值是否为负数,是则跳到步骤10,否则执行以下操作
    输出temp的值
    结束算法
    跳到步骤12
    跳到步骤14
    计算AB之和加上10的值,存入临时变量temp
    计算得到的数值是否为负数,是则跳到步骤16,否则执行以下操作
    输出temp的值
    结束算法
    跳到步骤18
    

    以下是该算法的代码(Hbuilder):

    #include <iostream>
    using namespace std;
    
    int main() {
        int A, B;
        cin >> A >> B;
        int temp;
        if (A > 0 && B > 0) {
            temp = A + B - 10;
        } else if (A <= 0 || B <= 0) {
            temp = A + B + 10;
        } else {
            cout << "Invalid input!" << endl;
            return 1;
        }
        if (temp < 0) {
            temp = 0;
        }
        cout << temp << endl;
        return 0;
    }
    

    以下是白盒测试的逻辑覆盖方法中的一种设计相应的测试用例:

    1. 测试用例1:输入A=2,B=3,期望输出结果为5。
    2. 测试用例2:输入A=-1,B=4,期望输出结果为3。
    3. 测试用例3:输入A=0,B=0,期望输出结果为0。
    4. 测试用例4:输入A=5,B=-3,期望输出结果为7。
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月1日
  • 已采纳回答 3月24日
  • 修改了问题 11月24日
  • 创建了问题 11月24日