小编use*_*199的帖子

java.lang.IllegalStateException:前面的方法调用getMessage("title")缺少行为定义

我正在使用EasyMock(版本2.4)和TestNG来编写UnitTest.

我有一个以下场景,我不能改变定义类层次结构的方式.

我正在测试扩展ClassA的ClassB.

ClassB看起来像这样

public class ClassB extends ClassA  {

  public ClassB()
    {
        super("title");
    }

    @Override
    public String getDisplayName() 
    {
        return ClientMessages.getMessages("ClassB.title");
    }

}
Run Code Online (Sandbox Code Playgroud)

ClassA代码

public abstract class ClassA {
    private String title;

    public ClassA(String title)
    {
        this.title = ClientMessages.getMessages(title);
    }

    public String getDisplayName()
    {
        return this.title;
    }
}
Run Code Online (Sandbox Code Playgroud)

ClientMessages类代码

public class ClientMessages {
    private static MessageResourse messageResourse;

    public ClientMessages(MessageResourse messageResourse) 
    {
        this.messageResourse = messageResourse;
    }
    public static String getMessages(String code) 
    {
        return messageResourse.getMessage(code);

    }
}
Run Code Online (Sandbox Code Playgroud)

MessageResourse类代码

public class MessageResourse …
Run Code Online (Sandbox Code Playgroud)

java testng unit-testing easymock

26
推荐指数
2
解决办法
6万
查看次数

标签 统计

easymock ×1

java ×1

testng ×1

unit-testing ×1