如何使用Junit监视Java中的方法?

如何使用Junit监视Java中的方法?,java,testing,junit,jasmine,mocking,Java,Testing,Junit,Jasmine,Mocking,我喜欢Jasmine,因为您可以检查函数是否被调用,以及传递给它的内容 有没有办法用junit和java做到这一点 基本上,我有一个调用log函数的函数。我想确保函数正在被调用,并且使用正确的值被调用 注意,我们只有一个生产构建,没有测试构建和生产,所以模拟制造可能是一个问题 你想调查Mockito。您可以在单元测试中使用它来模拟服务,然后还可以监视它。下面是一个Kotlin伪代码 @Mock private val myService : MyService? = null @InjectM

我喜欢Jasmine,因为您可以检查函数是否被调用,以及传递给它的内容

有没有办法用junit和java做到这一点

基本上,我有一个调用log函数的函数。我想确保函数正在被调用,并且使用正确的值被调用

注意,我们只有一个生产构建,没有测试构建和生产,所以模拟制造可能是一个问题


你想调查Mockito。您可以在单元测试中使用它来模拟服务,然后还可以监视它。下面是一个Kotlin伪代码

@Mock
private val myService : MyService? = null

@InjectMocks
private val myController: MyController? = null

myController?.controllerStuff(param1)
Mockito.verify(myService, Mockito.times(1))?.doSomething(param2)

为此,您不需要进行测试构建吗?您不能在生产代码上运行junit测试,对吗?通常在Java中,您让Gradle或Maven等构建工具来构建您的项目。这种构建工具将(除其他外)构建生产二进制文件、构建测试二进制文件、启动测试,然后打包生产二进制文件