我有一个Spring Boot Maven应用程序。项目内部有大量使用RestAssured
的API测试。这些测试未标记为@SpringBootTest
,因此在运行它们时,应用程序的上下文没有提高,因此要使测试通过,必须先启动并运行该应用程序。
我要创建一个Teamcity
的内部版本,
我正在使用安装了maven的代理。 问题是:
如何创建构建步骤,在该步骤中,我在定义的端口上运行应用程序,然后运行api测试 反对吗?
我尝试过的是创建这样的构建步骤:
mvn spring-boot:run & sleep 50s mvn test
mvn clean package -DskipTests
我认为spring boot应用程序将启动,并且测试将在一段时间后开始启动。成功完成第1步后,我创建了一个工件。
问题在于,由于spring boot应用程序正在运行(阻止终端),因此从未退出构建步骤。