在java单元测试中模拟用scala编写的静态方法

a6b3iqyw  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(530)

我们在一个项目中使用Kafka客户机。我试图通过jmockit模拟kafka客户端的静态方法:

new NonStrictExpectations() {
        {
            new MockUp<Consumer>()
            {                   
                @Mock
                ConsumerConnector createJavaConsumerConnector(
                        ConsumerConfig c){
                    return null;
                }
            };
        }
    };

看起来jmockit由于某种原因不起作用。我确信jmockit用于模拟静态方法的语法。这是错误:

java.lang.IllegalArgumentException: Matching real methods not found for the following mocks:
dispatcher.DispatcherTests$1$1#createJavaConsumerConnector(kafka.consumer.ConsumerConfig)

如果因为kafka客户机代码在scala中而无法工作,那么我的程序是如何工作的?

sg3maiej

sg3maiej1#

有多个consumerconnector类-我使用的一个来自错误的包..scala没有在这里产生任何问题。它在使用正确的consumerconnector类之后工作。

相关问题