用反应式WebTestClient测试Junit的断言错误 状态 预期:201 实际:404

@ExtendWith(SpringExtension.class) @WebFluxTest(controllers = EventsControllerTest.class) class EventsControllerTest { @MockBean UserRepo repo; @Autowired private WebTestClient webClient;

@Test
void testAssignUserRoles() {
    UserInfo user = new UserInfo();
    user.setId(Long.valueOf(1));
    user.setFirstname("Test");
    user.setLastname("Test2");
    user.setActiveuser(true);
    user.setEmailid("tet@test.com");
    user.setRolename("test");
    user.setUserpassword("test");
    Mockito.when(repo.save(user)).thenReturn(Mono.just(user));
    webClient.post().uri("/assignRoles").contentType(MediaType.APPLICATION_JSON)
        .body(BodyInserters.fromObject(user)).exchange().expectStatus().isCreated();
    Mockito.verify(repo, times(1)).save(user);
}

控制器 @RestController public class EventsController { @Autowired UserInfoRepository userInfoRepository;

@PostMapping(value = "/saveRole")
public Mono<UserInfo> assignUserRoles(@RequestBody UserInfo userInfo) {
    return userInfoRepository.save(userInfo).log();
}

解决方案:

访问URI应该匹配值属性的 @PostMapping: saveRole.

给TA打赏
共{{data.count}}人
人已打赏
未分类

无法使用gitbash创建文件或目录。

2022-9-8 15:46:20

未分类

组装弹簧回流slf4j记录仪。

2022-9-8 15:46:22

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索