Java程序:根据首字母判断星期几,并使用JUnit测试
下面是用Java语言编写的程序代码:
public class DayOfWeek {
public static String getDayOfWeek(char firstLetter, char secondLetter) {
if (firstLetter == 'M' || firstLetter == 'm') {
return "Monday";
} else if (firstLetter == 'T' || firstLetter == 't') {
if (secondLetter == 'U' || secondLetter == 'u') {
return "Tuesday";
} else if (secondLetter == 'H' || secondLetter == 'h') {
return "Thursday";
}
} else if (firstLetter == 'W' || firstLetter == 'w') {
return "Wednesday";
} else if (firstLetter == 'F' || firstLetter == 'f') {
return "Friday";
} else if (firstLetter == 'S' || firstLetter == 's') {
if (secondLetter == 'A' || secondLetter == 'a') {
return "Saturday";
} else if (secondLetter == 'U' || secondLetter == 'u') {
return "Sunday";
}
}
return "Invalid input";
}
}
下面是使用JUnit框架编写的测试类:
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class DayOfWeekTest {
@Test
public void testMonday() {
assertEquals("Monday", DayOfWeek.getDayOfWeek('M', 'X'));
}
@Test
public void testTuesday() {
assertEquals("Tuesday", DayOfWeek.getDayOfWeek('T', 'U'));
}
@Test
public void testThursday() {
assertEquals("Thursday", DayOfWeek.getDayOfWeek('T', 'H'));
}
@Test
public void testWednesday() {
assertEquals("Wednesday", DayOfWeek.getDayOfWeek('W', 'X'));
}
@Test
public void testFriday() {
assertEquals("Friday", DayOfWeek.getDayOfWeek('F', 'X'));
}
@Test
public void testSaturday() {
assertEquals("Saturday", DayOfWeek.getDayOfWeek('S', 'A'));
}
@Test
public void testSunday() {
assertEquals("Sunday", DayOfWeek.getDayOfWeek('S', 'U'));
}
@Test
public void testInvalidInput() {
assertEquals("Invalid input", DayOfWeek.getDayOfWeek('X', 'X'));
}
}
以上测试类中设计了最少的测试数据满足语句覆盖测试,每个测试方法对应一个不同的情况,使用assertEquals方法判断期望结果和实际返回值是否一致。
原文地址: https://www.cveoy.top/t/topic/pgZq 著作权归作者所有。请勿转载和采集!