当前位置: 首页 > 知识库问答 >
问题:

Mockito验证:需要但未调用的错误

贾骏喆
2023-03-14

我实际上是在努力做下面的事情:我的服务类

 @Service   
    public class serviceclass{
    
    @Autowired  
    MessageReplyingSender rclass;
    
    public void doMethod(){
    Object o = rlcass.something("hey","hey",null,1000);
    }
    }
    
    public interface MessageReplyingSender {
    
        public <T> Object something(String sendertopic,T message,Map<String, Object> headers, long replyTimeout)
                throws Exception;
    }
    
    
    
    Test Class:  
    @RunWith(MockitoJUnitRunner.class)  
    public class testclass{  
    @InjectMocks  
        private serviceclass sclass;
        
        @Mock
        MessageReplyingSender rclass;
    
       public void test throws Exception{
    Mockito.verify(rclass).something(Mockito.anyString(), Mockito.anyString(), Mockito.any(), Mockito.anyLong());

Mockito.when(rclass.something(Mockito.anyString(), Mockito.anyString(), Mockito.any(), Mockito.anyLong())).thenReturn("gh");
sclass.doMethod();
        
            
    }
    }

这让我想要的没有被调用,实际上与这个模拟没有任何交互。你知道我做错了什么吗??

共有1个答案

慕容俭
2023-03-14

您正在验证是否调用了rclass#something。但这并没有发生,因为您忘记用ServiceClass#domethod触发它

 类似资料:
  • 晚安, 我正在对我的服务进行一些测试,在删除方法中执行测试时遇到了问题。 我想知道是否有人犯过这个错误,可以帮助我。 我扫描时出错。据报道,该方法没有使用。 例外情况: 代码:

  • 我知道其他人问过这个(或类似的)问题,但没有一个解决方案对我有帮助。我有3节课: 我的测试类: 我想验证B. subMethod()是否在A. superMethod()中被调用。我如何才能完成此任务。我知道我需要使用PowerMock来完成此任务,但我不确定如何。此外,我不允许更改有关A类或B类的任何内容。 任何帮助都将不胜感激!

  • 我试图学习和,以实现我正在为一个已经工作的Android项目创建测试。但是我有一些麻烦。这会让你知道我想测试的活动: 这段代码所做的是获取Active会话,根据它的状态,它显示了不同的。现在我将向您展示测试类: 正如你所见,我在一个单独的java项目中使用了Robolectric和Mockito。当我运行测试类时,我得到以下信息: 你能帮我一下吗? 编辑 我去掉了ActivityControlle

  • 我正在做一个单元测试,在我的应用程序中的类,它只是一个简单的类,我认为我做的一切都是正确的,但测试失败了,说: 需要但未调用:MContextWeakReference.Get();->在rahmat.com.app.utility.backwardcompatibility.StringResourceUtilTest.GetString(StringResourceUtilTest.java:

  • 我是摩基托的新手,不明白这是什么问题。而且你能不能说我,如何做Mockito单位正确,因为我真的不能理解他们!更新的错误和测试类 我有下一个例外: 下面是我的DAO类:

  • 我在SUT中有这段代码: 我知道模型不会为空,因为模型已经存在。因此,我希望不应该与model一起调用。因此,我需要某种的方法,以确保该方法不是用此参数调用的。现在我知道了如何进行相反的操作:如何确保/验证或任何方法本身是在的帮助下用参数调用的,但不确定当前的场景。请帮帮忙。 谢谢