junit Keycloak管理客户端Spring Boot 测试不影响真实的的Keycloak

chhkpiq4  于 2022-11-11  发布在  Spring
关注(0)|答案(1)|浏览(126)

我有keycloak-admin-client在我的应用程序,我想测试一些操作,如添加用户等,但我不想影响真实的的keyclock应用程序。如何做到这一点?提前感谢

@SpringBootTest
@RunWith(SpringRunner.class)
class ProfilesApplicationTests {

    @Autowired
    private AccountService accountService;

    @Autowired
    private UsersResource usersResource;

    @Test
    void testGetAccountById() {

        UserRepresentation user = new UserRepresentation();
        user.setEnabled(true);
        user.setUsername("tester1");
        user.setFirstName("First");
        user.setLastName("Last");
        user.setEmail("tom+tester1@tdlabs.local");
        user.setAttributes(Collections.singletonMap("origin", List.of("demo")));

        Response response = usersResource.create(user);
        String userId = CreatedResponseUtil.getCreatedId(response);

        Assertions.assertNotNull(accountService.findById(userId);

    }

}
epfja78i

epfja78i1#

在我方面,我已经将keycloak示例化为一个测试容器,并对它启动集成测试,就像它不会影响生产中任何keycloak一样。

相关问题