如何使 swagger 端点仅可用于测试环境?

How to make swagger endpoint available only for testing environment?

在自动化测试中,为了在测试前后清空数据库,连接到测试环境的数据库时出现问题。

但是后端仓库中有一个脚本可以清除数据库,我可以使用它。 我认为触发此脚本的最简单方法是调用后端提供的 swagger API 端点。

但是为了保证生产环境的安全,这个端点应该只在测试环境中可用。

但是如何正确地做到这一点?

只需在配置 class 上使用 @Profile({"!prod && swagger"})

@Configuration 
@Profile({"!prod && swagger"})
public class SwaggerConfig {
    ..
}