Java 从子类调用方法的 JUnit 案例失败

Java Failure on JUnit Case Calling a Method from a Subclass

我有 class Settore 的子class Alieni 的构造函数 AlieniALIENI 设置名称 ALIENI enumNome到某个Settore(由整数coordinataXcoordinataY组成)。

我要进行的测试是验证在 运行 将方法 Alieni 转换为 Settore(3,10) 之后,当我 运行 方法 getSettoreNome 在同一个 Settore 上它应该 return 名称 ALIENI 但它 returns null.

import static org.junit.Assert.*;
    public class Settore {
            private Nome settoreNome;
            private final int coordinataX;
            private final int coordinataY;

        public Settore (int coordinataX, int coordinataY){
            this.coordinataX=coordinataX;
            this.coordinataY=coordinataY;
        }
        public Nome getSettoreNome() {
            return settoreNome;
        }
        public void setSettoreNome(Nome settoreNome) {
            this.settoreNome = settoreNome;
        }

    }
public enum Nome {
SICURO, PERICOLOSO, SCIALUPPA, ALIENI, UMANI
}
public class Alieni extends Settore {

    public Alieni(int coordinataX, int coordinataY) {
        super(coordinataX, coordinataY);
        setSettoreNome(Nome.ALIENI);
    }
}
public class AlieniTest {

    @Test
    public void testAlieni() {
        Settore settore = new Settore(3,10);
        new Alieni(3,10);
        assertEquals(Nome.ALIENI, settore.getSettoreNome());
    }

}

您没有在任何地方分配 Alieni 的新实例。大概您打算将其分配给 settore:

public class AlieniTest {

    @Test
    public void testAlieni() {
        Settore settore = new Alieni(3,10);
        assertEquals(Nome.ALIENI, settore.getSettoreNome());
    }
}