通过黑盒测试的边界值分析法来进行问题的解析并编写用例

某公司生产机器人及部件,机器人包含3大部件:主控模块、通信模块及执行模块。该公司的代理商负责销售机器人整机和部件;公司要求每个代理商每月最少销售一整套机器人(即三类部件至少各销售一个);受限于公司产能,公司每个月最多给每个代理商提供80个主控模块、90个通信模块以及100个执行模块。每个主控模块售价90元、每个通信模块售价60元、每个执行模块售价50元。到6月末的时候,公司会根据代理商的销售情况计算佣金。

佣金计算方法如下:

没有销售额在1000元以下(含)的部分,佣金为10%;

超过1000元但不超过2400元(含)的部分,佣金为15%;

超过2400的部分,佣金为20%。

佣金计算函数:

import java.util.Scanner;

public class test {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while(scanner.hasNext()){
            int x = scanner.nextInt();
            double m =0;
            if(x<=1000){
                m = x*0.1;
            }else if(x<=2400){
                m = (x-1000)*0.15+100;
            }else{
                m = (x-2400)*0.2+310;
            }
            System.out.println(m);
        }
    }
}

按照边界取值方法分析:
模块 正常取值 边界值选取
主控模块 [1,80] {0,1,2,40,79,80,81}
通信模块 [1,90] {-1,0,1,45,89,90,91}
执行模块 [1,100] {-1,0,1,50,99,100,101}

测试用例 主控模块 通信模块 执行模块 总销售额 预期输出
test01 0 45 50 5200 主控模块输入非法
test02 1 45 50 5290 佣金:888
test03 2 45 50 5380 佣金:906
test04 79 45 50 12310 佣金:2292
test05 80 45 50 12400 佣金:2310
test06 81 45 50 12490 主控模块输入非法
test07 40 0 50 6100 通信模块输入非法
test08 40 1 50 6160 佣金:1062
test09 40 2 50 6220 佣金:1074
test10 40 89 50 11440 佣金:2118
test11 40 90 50 11500 佣金:2130
test12 40 91 50 11560 通信模块输入非法
test13 40 45 0 6300 执行模块输入非法
test14 40 45 1 6350 佣金:1100
test15 40 45 2 6400 佣金:1110
test16 40 45 99 11250 佣金:2080
test17 40 45 100 11300 佣金:2090
test18 40 45 101 11350 执行模块输入非法
test19 40 45 50 8800 佣金:1590

测试用例的编写
ydni

Logo

领路信创诚邀您共建高质量内容社区,投稿申请~

更多推荐