我正在尋找 jacoco 向我展示我沒有完全涵蓋我的函式 equals 和 hashCode 的原因。
我有這個模型代碼:
import lombok.Data;
@Data
public class Building2 {
private String buildingId;
private String buildingName;
public Building2(String buildingId, String buildingName) {
this.buildingId = buildingId;
this.buildingName = buildingName;
}
}
我這樣測驗:
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.jupiter.api.Test;
public class ModelTest {
@Test
void instantiateBuilding2ModelTest(){
// Given
String buildingId = "[email protected]";
String buildingName ="myBuildingName";
String buildingId2 = "[email protected]";
String buildingName2 = "secondBuildingName";
String buildinId3 = "[email protected]";
String buildingName3 = "thirdBuildingName";
Building2 building2;
Building2 building2_2 = new Building2(buildingId2, buildingName2);
Building2 building2_3 = new Building2(buildinId3, buildingName3);
// Test Getter
building2 = new Building2(buildingId, buildingName);
assertEquals(building2.getBuildingId(), buildingId);
assertEquals(building2.getBuildingName(), buildingName);
// Test Setter
building2.setBuildingId(buildingId2);
building2.setBuildingName(buildingName2);
assertEquals(building2.getBuildingId(), buildingId2);
assertEquals(building2.getBuildingName(), buildingName2);
// Test toString
String building2ToString = "Building2(buildingId=" building2.getBuildingId() ", buildingName=" building2.getBuildingName() ")";
assertEquals(building2.toString(), building2ToString);
// Test canEqual
assertTrue(building2.canEqual(building2_3) && building2_3.canEqual(building2));
// Test equals
assertTrue(building2.equals(building2_2));
assertFalse(building2.equals(building2_3));
// Test hashCode
assertTrue(building2.hashCode() == building2_2.hashCode());
assertFalse(building2.hashCode() == building2_3.hashCode());
}
}
但是當我為測驗覆寫生成 jacoco 報告時,它向我展示了:
所以我不明白我實際上沒有測驗什么方法。
我從springboot和JUnit開始,非常感謝您的回答!
uj5u.com熱心網友回復:
要將 Lombok 創建的方法排除在專案覆寫范圍之外,您可以lombok.config在根目錄中創建一個檔案并包含以下兩行:
config.stopBubbling = true
lombok.addLombokGeneratedAnnotation = true
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/525617.html
上一篇:在Java代碼中使用SQL在OracleDB中添加天數
下一篇:從DynomoDB獲取大量資料?
