Protected Junit用于返回新实例的受保护方法

Protected Junit用于返回新实例的受保护方法,protected,easymock,Protected,Easymock,如何在easyMock中为此代码段编写junit protected void fireMonitor(BusMessage busMessage) { String distCode = getDistCode(); if (distCode.equals("OMP")) { new Monitor(hotelRateFeed.getHostCode(); } } 我们需要验证此处生成的监视器。有谁能帮我解决这个问题吗?您可以使用PowerM

如何在easyMock中为此代码段编写junit

protected void fireMonitor(BusMessage busMessage) {
    String distCode = getDistCode();    
    if (distCode.equals("OMP")) {
        new Monitor(hotelRateFeed.getHostCode();
    } 
}

我们需要验证此处生成的监视器。有谁能帮我解决这个问题吗?

您可以使用PowerMock模拟并设置新操作员的期望值

   Monitor monitor= PowerMock.createMock(Monitor.class);
    PowerMock.expectNew(Monitor.class, <hostcode parameter>).andReturn(monitor).once();
    PowerMock.replayAll(monitor);
    PowerMock.verify(monitor);
Monitor=PowerMock.createMock(Monitor.class);
expectNew(Monitor.class,).andReturn(Monitor.once();
PowerMock.replayAll(监视器);
验证(监视器);

这样,您可以验证对象是否创建一次。希望它能帮助你创建一个测试,你必须问自己“这个方法的行为是什么”,然后测试这个行为。在你的例子中,我们必须知道“新监视器”是什么意思