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

模拟对象返回NPE

鱼锦
2023-03-14
@SpringBootTest
@RunWith(MockitoJUnitRunner.class)
public class EmpCompSTest {
    @Mock
    private CompCl compCl; 

    @Test
    public void testGetEmpCompS() {
        EmpRequest request = new EmpRequest();
        Map<Long, List<CompCl.CompeSc>> comp = new HashMap<>();
        CompCl.CompSc compSc1
                = new CompCl.CompSc(); 
        comp.put(1L, Arrays.asList(compSc1));
     when(compCl.getUsrSc(request.getComp().keySet())).thenReturn(comp); 
    }
}

调试时,在带有When()的行中弹出一个NullPointerException,类compCLnull

共有1个答案

别宏盛
2023-03-14

这是Junit5(木星)吗?在这种情况下,使用@ExtendWith(MockitoExtension.class)而不是@RunWith(MockitoJUnitRunner.class)

 类似资料:
  • 如何模拟返回已强制转换的模拟对象的方法。 试验方法。

  • 尽管遵循了多种不同的资源,但我无法让PowerMock在新的时间工作。以下是我的示例: 我试图模拟构造函数,使其指向这样的点: 我做错什么了吗?我应该提到,我正在gradle项目中使用PowerMock。这似乎与https://automationrhapsody.com/mock-new-object-creation-powermock/,所以我不知道为什么它对我不起作用。

  • 我有一个类。并且我已经编写了一个类的单元测试方法的类。我的代码如下:- 在我的单元测试课上,我编写了以下方法。 当我执行测试类,我得到错误。这是因为在类中,在方法的第8行中,学生机构映射字段为null。这只发生在模拟对象上。如何获得模拟对象的自动生成字段?

  • 问题内容: 我正在为我的应用程序编写单元测试,我想知道Mockito框架是否有可能影响传递到返回无效类的方法中的对象。例如,调用一个包含方法的模拟验证类,该方法返回void,但通过作为参数传入的对象来跟踪各种更改和元数据。。 我为其他测试模拟了验证器类,但是对于这个测试,我需要模拟对不知道怎么做的cartItemsFilter对象的更改。 问题答案: 答案是肯定的,您可以,并且根据测试的需要,基本

  • 问题内容: 我想从包含2个静态方法m1和m2的类中模拟静态方法m1。我希望方法m1返回一个对象。 我尝试了以下 1) 这将同时调用m1和m2,它们具有不同的返回类型,因此会给出返回类型不匹配错误。 2) 但是,执行m1时不会调用此方法。 3) 给出了我不能从http://code.google.com/p/powermock/wiki/MockitoUsage获得的,无法提供模拟部分的编译器错误。

  • 我想从一个包含两个静态方法m1和M2的类中模拟一个静态方法m1。并且我希望方法m1返回一个对象。 我尝试了以下操作 2)但在执行m1时不调用它。