【发布时间】:2017-06-09 01:18:32
【问题描述】:
我有一个测试控制器的集成测试。我传入一个请求并得到响应,测试通过了。但是,在发出请求之前,我必须向/authenticate 端点发出请求以检索令牌,以便我可以将其放在请求的标头中。我有 2 个问题
- 我在本地使用的用户名和密码针对开发 LDAP 服务器进行验证。随着应用程序部署到更高的环境,LDAP 端点会更改为相应的级别。因此,在高于 DEV 的环境中,集成测试将失败,因为该用户名/密码组合不起作用。那么获取用户名/密码以匹配环境的最佳方法是什么?有没有更好的方法来做到这一点,比如强制 spring 完全忘记身份验证?
- 集成测试测试所有控制器的端点,如
/add、/get等。不幸的是,这实际上修改了数据库(预期)。有什么方法可以运行这些测试,但不实际上修改数据库?
【问题讨论】:
标签: java spring authentication spring-boot integration-testing