@mock如何给$Value(“name:tony“) private String name;赋值

在使用@Mock注解时,不能直接给带有@Value注解的字段赋值。因为@Mock注解是用于创建Mock对象,而@Value注解是用于注入值的。

如果你想给带有@Value注解的字段赋值,可以使用以下方法:

  1. 使用ReflectionTestUtils.setField()方法

    ReflectionTestUtils.setField(yourObject, "name", "tony");
  2. 使用Mockito的when()方法

    when(yourObject.getName()).thenReturn("tony");
  3. 使用Spring的TestPropertyValues.of()方法

    TestPropertyValues.of("name:tony").applyTo(yourApplicationContext);
  4. 使用@SpyBean注解

    @SpyBean
    private YourObject yourObject;
    
    // 在测试方法中
    doReturn("tony").when(yourObject).getName();

    请注意,以上方法可能需要根据你的具体测试场景和框架进行调整。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值