草庐IT

mockito-kotlin

全部标签

java - 从 Kotlin 实现 Java 接口(interface)时出现 NullPointerException

我正在尝试在Kotlin中从RxJava实现BiFunction接口(interface),但我得到了一个NullPointerException。这是我在Kotlin中实现的Java接口(interface)。它来自RxJava2。packageio.reactivex.functions;importio.reactivex.annotations.NonNull;/***Afunctionalinterface(callback)thatcomputesavaluebasedonmultipleinputvalues.*@paramthefirstvaluetype*@param

Java mockito 模拟集

在循环中使用后是否可能进行模拟设置,例如for(Stringkey:mySet){...}谢谢。 最佳答案 有几个选项:转换使用@Mock注解例子:SetmySet=(Set)mock(Set.class);——或者——@MockprivateSetmySet;@BeforepublicvoiddoBefore()throwsException{MockitoAnnotations.initMocks(this.getClass());//thisshouldcreatemocksforyourobjects...}

java - 如何让 Mockito 模拟按顺序执行不同的操作?

以下代码:ObjectMappermapper=Mockito.mock(ObjectMapper.class);Mockito.doThrow(newIOException()).when(mapper).writeValue((OutputStream)Matchers.anyObject(),Matchers.anyObject());Mockito.doNothing().when(mapper).writeValue((OutputStream)Matchers.anyObject(),Matchers.anyObject());try{mapper.writeValue(n

java.lang.NoSuchMethodError : org. mockito.internal.runners.RunnerFactory.createStrict(Ljava/lang/Class;)Lorg/mockito/internal/runners/InternalRunner;

我正在使用Mockitojar为Groovy编写Junit测试用例,但它给了我以下异常:java.lang.NoSuchMethodError:org.mockito.internal.runners.RunnerFactory.createStrict(Ljava/lang/Class;)Lorg/mockito/internal/runners/InternalRunner;atorg.mockito.junit.MockitoJUnitRunner.(MockitoJUnitRunner.java:152)atsun.reflect.NativeConstructorAccess

java - mockito 中@InjectMocks 和@Autowired 用法的区别?

当我使用Mockito和Junit编写测试用例时,我使用了@InjectMocks作为要测试的类。在项目的其他部分,我还看到@Autowired被用于要测试的类。我什么时候可以使用@InjectMocks和@Autowired?当我们尝试将它们与要测试的类一起使用时,两者之间有什么区别? 最佳答案 @InjectMocks是一种Mockito机制,用于将test类中声明的字段注入(inject)到undertest类中的匹配字段中。它不要求被测类是Spring组件。@Autowired是Spring的注释,用于将beanAutowi

java - Mockito 在模拟方法的参数上调用方法

我刚开始使用Mockito,我只想做类似的事情:publicclassTest{publicvoidclearList(Listl){doVeryLOOOONGDatabaseCallll();l.clear();return;}}///...Testtest=mock(Test.class);Mockito.when(test.clearList(any(List.class))).then(l=>l.clear());有一些技巧吗?感谢您的帮助! 最佳答案 应该这样做(未测试):doAnswer(newAnswer(){publ

java - 在同一个对象上多次调用 Mockito.when?

当尝试将Mockito与Spring一起使用时,通过bean声明创建Mock对象......我在多次调用Mockito.when而不重置Mock对象时发现了一些奇怪的行为,例如:Mockito.when(this.accountMapper.createBadGrammarException()).thenThrow(newBadSqlGrammarException("Bla",null,newSQLException()));一旦在测试期间(在同一个模拟上)多次调用此代码(“Mockito.when”),测试就会失败并出现错误(BadSqlGrammerException,即使此异

java - Mockito when().thenReturn() 不能正常工作

我有一个具有2个函数的A类:函数a()返回一个随机数。调用a()并返回返回值的函数b()。在测试中我写了这个:Atest=Mockito.mock(A.class)Mockito.when(test.a()).thenReturn(35)assertEquals(35,test.a())assertEquals(35,test.b())测试在第二个断言处失败。有谁知道为什么吗?要清楚-这不是我的真实代码,而是解释我的问题的简单代码 最佳答案 由于A类是模拟的,所有方法调用都不会转到实际对象。这就是你的第二个断言失败的原因(我猜它可能

AndroidStudio 2024-2-21 Win10/11最新安装配置(Kotlin快速构建配置,gradle镜像源)

AndroidStudio2024Win10/11最新安装配置教程目的:(从安装到卸载),针对Kotlin开发配置,gradle-8.2-src/bin下载慢,以及Kotlin构建慢的解决好久没玩AS了,下载发现装个AS很麻烦,就觉得有必要出个教程了(就是记录一下:嘻嘻)因为以前全删了(退坑了),最近又想玩了所以重新安装一下.因为我安装过了,所以一些无脑的操作就简单略过了,但是必要的操作会很详细排版可能有点乱,见谅(嘻嘻)掐个表(记录一下时间)一.基础配置1.1AndroidStudio下载下载AndroidStudio进入AS官网https://developer.android.googl

java - 在 Mockito 中,当顺序很重要时,验证同一方法的两次调用与中间的另一个方法调用

我认为这会起作用:InOrderinOrder=newInOrder(mock);inOrder.verify(mock).method1();inOrder.verify(mock).method2();inOrder.verify(mock).method1();...但是Mockito说不希望调用mock.method1()。想要1次,但被2次。我将代码更改为:inOrder.verify(times(2),mock).method1();inOrder.verify(mock).method2();它应该可以工作,但现在我没有测试我一开始想测试的东西。有人可以指出我做错了什么,