在 Geb 配置中使用来自 Spring 引导的动态端口

Use dynamic port from Spring Boot in Geb configuration

Spring Boot 的测试框架有一个选项 select 用于测试 运行 和 'server.port:0' 的随机端口。 The documentation suggests grabbing the port as a Spring @Value,但我想用它来设置 GebConfig.groovy 中的 baseUrl。有没有办法从 ConfigSlurper 中访问动态端口号?

只需覆盖基本规范中的 GebSpec.createConf()

@Value("${local.server.port}")
int port

Configuration createConf() {
    def configuration = super.createConf()
    configuration.baseUrl = "http://localhost:$port"
    configuration
}