边界值分析法测试财政收入
相关代码:
money.java
import java.text.DecimalFormat;
import java.util.Scanner;
public class money {
public static String jsse(double money01){
DecimalFormat df = new DecimalFormat("0.00"); //控制输出的小数位数
double money02 = money01 - 3500;
String se01 = "初始化";
if (money01 <= 3500){
se01 = "0";
}else if ( 0.00 < money02 && money02 <= 500.00){
se01 = df.format(money02 * 0.05);
}else if ( 500 < money02 && money02 <= 2000){
se01 = df.format(((money02 - 500) * 0.1) + 25);
}else if ( 2000 < money02 && money02 <= 5000){
se01 = df.format(((money02 - 2000) * 0.15) + 175);
}else if ( 5000 < money02 && money02 <= 20000){
se01 = df.format(((money02 - 5000) * 0.20) + 625);
}else if ( 20000 < money02 && money02 <= 40000){
se01 = df.format(((money02 - 20000) * 0.25) + 3625);
}else if ( 40000 < money02 && money02 <= 60000){
se01 = df.format(((money02 - 40000) * 0.30) + 8625);
}else if ( 60000 < money02 && money02 <= 80000){
se01 = df.format(((money02 - 60000) * 0.35) + 14625);
}else if ( 80000 < money02 && money02 <= 100000){
se01 = df.format(((money02 - 80000) * 0.40) + 21625);
}else if ( 100000 < money02){
se01 = df.format(((money02 - 100000) * 0.45) + 29625);
}else {
se01 = "算不出!";
}
return se01;
}
}
Texe_main.java
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import java.util.Arrays;
import java.util.Collection;
@RunWith(Parameterized.class)
public class Test_main {
private double in;
private String out;
public Test_main(double in , String out) {
this.in = in;
this.out = out;
}
@Parameterized.Parameters(name = "{index}: money({0})={1}")
public static Iterable<Object[]> data() {
return Arrays.asList(new Object[][] {
{3999 , "24.95"} , {4000, "25.00"} , {4001, "25.10"} , {4999, "124.90"} ,
{5499 , "174.90"} , {5500, "175.00"} , {5501, "175.15"} , {7549, "482.35"} ,
{8499 , "624.85"} , {8500, "625.00"} , {8501, "625.20"} , {13999, "1724.80"} ,
{23499 , "3624.80"} , {23500, "3625.00"} , {23501, "3625.25"} , {39999, "7749.75"} ,
{43499 , "8624.75"} , {43500, "8625.00"} , {43501, "8625.30"} , {56999, "12674.70"} ,
{63499 , "14624.70"} , {63500, "14625.00"} , {63501, "14625.35"} , {73999, "18299.65"} ,
{83499 , "21624.65"} , {83500, "21625.00"} , {83501, "21625.40"} , {99999, "28224.60"}
});
}
@Test
public void Test_money(){
Assert.assertEquals(out,money.jsse(in));
}
}
测试结果:
本文地址:https://blog.csdn.net/weixin_44838589/article/details/110220908