1.1.给定一个百分制的分数,输出相应的等级。 90 分以上 A 级 80~89 B 级 70~79 C 级 60~69 D 级 60 分以下 E 级 下面代码实现了根据输入的分数,输出对应的等级。请根据基本路径法和条件组合法分别设计测试用例,使用Junit实现单元测试。
时间: 2024-10-09 19:07:24 浏览: 23
1.1.为了实现这个功能,首先需要编写一个计算等级的函数。例如,在Java中,我们可以创建一个`GradeCalculator`类,包含一个`calculateGrade`方法:
```java
public class GradeCalculator {
public String calculateGrade(int score) {
if (score >= 90) {
return "A";
} else if (score >= 80 && score < 90) {
return "B";
} else if (score >= 70 && score < 80) {
return "C";
} else if (score >= 60 && score < 70) {
return "D";
} else {
return "E";
}
}
}
```
接下来,我们使用JUnit进行单元测试。基于基本路径法,我们需要覆盖所有可能的分支,包括边界情况和正常情况:
**基本路径法测试用例:**
```java
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class GradeCalculatorTest {
@Test
public void testCalculateGrade() {
GradeCalculator calculator = new GradeCalculator();
// 测试最高分
assertEquals("A", calculator.calculateGrade(95));
// 测试正常范围内的分数
assertEquals("B", calculator.calculateGrade(85));
assertEquals("C", calculator.calculateGrade(75));
assertEquals("D", calculator.calculateGrade(65));
// 测试最低分
assertEquals("E", calculator.calculateGrade(55));
// 边界值测试
assertEquals("A", calculator.calculateGrade(90)); // 最低A级
assertEquals("D", calculator.calculateGrade(69)); // 最高D级
}
}
阅读全文