最近我更深入地进行单元测试,我有点卡住了。
例子。我们有这样的方法:
boolean isCheckOutChecked(NmCommandBean clientData) {
return "checkOut".equalsIgnoreCase(clientData.getTextParameter("checkOut"));
}
其中大部分取决于clientData
返回的内容。有两种可能:
- 如果找不到文本参数,则返回 null
- 如果有则返回字符串值
嗯......我已经创建了两个测试,但想知道这样的测试是否有任何意义?在这种情况下你会做什么?
@Test
void shouldReturnTrueWhenCheckoutIsChecked() {
doReturn("checkOut").when(clientData).getTextParameter("checkOut");
boolean checkOutChecked = formProcessor.isCheckOutChecked(clientData);
assertTrue(checkOutChecked);
}
@Test
void shouldReturnFalseWhenCheckoutIsNotChecked() {
doReturn(null).when(clientData).getTextParameter("checkOut");
boolean checkOutChecked = formProcessor.isCheckOutChecked(clientData);
assertFalse(checkOutChecked);
}