参数与Mockito和Scalatest匹配



我试图使用mockito与scalatest,但我的mock总是返回null。这是一个简单的测试,但是对post的调用没有返回我期望的对象(someObj3),而是返回null。知道发生了什么吗?此外,在Scala中是否有一个等效的API,允许我在创建期望时传递特定类或类型的任何参数?

@Test def mockTestt = {
 var mock:Someclass = Mockito.mock(classOf[Someclass]);
 systemUnderTest.setSomeClass(mock)
 when(mock.post(someObj1,someObj2))
        .thenReturn(someObj3) 
 var status:String = systemUnderTest.isOpen(someObj1, someObj2)
 Assert.assertTrue(status.equalsIgnoreCase("Enabled"))

}

可能mock本身不是null,而是您在创建mock之后没有存根或mock正在使用的mock的成员。

如果您可以切换到Specs2,您会发现它为Mockito提供的DSL处理起来要容易得多。您仍然需要存根/模拟模拟的所有嵌套/附属成员,但如果您这样做,您的代码将少得多的噪音和冗长。

相关内容

  • 没有找到相关文章

最新更新