<分区>
我对一个在两个类之间进行映射的方法进行了单元测试。
@Test
public void testMapping() {
MappingClass mappingClass = new MappingClass();
FromClass fromClass = new FromClass("string.value");
ToClass toClass = mappingClass.map(fromClass);
//This...
assertEquals(fromClass.getStringValue(), toClass.getMappedStringValue());
//... or this?
assertEquals("string.value", toClass.getMappedStringValue());
}
getter 巧合地包含相同的字符串值,我相信代码是这样写的,因为作者知道 map 方法会调用 getter。正是出于这个原因,我期望绝对值,因为从 TDD 的角度来看,您应该不知道实现。
与评估派生值相比,单元测试评估主题的绝对值有什么好处?
编辑:为避免混淆,实现方式如下:
public class FromClass {
private String stringValue;
public FromClass(String stringValue) {
this.stringValue = stringValue;
}
public String getStringValue() {
return stringValue;
}
}
public class ToClass {
private String mappedStringValue;
public ToClass(String mappedStringValue) {
this.mappedStringValue = mappedStringValue;
}
public String getMappedStringValue(){
return mappedStringValue;
}
}
public class MappingClass {
public ToClass map(FromClass fromClass){
return new ToClass(fromClass.getStringValue());
}
}