spring 如何使用一个网络环境进行多个测试

蒙蒂

我有多个具有多个路径的 REST API。我目前正在使用 junit 测试这些 APIS,使用 spring 的网络环境来设置 http 服务器。所以我使用一个包含以下注释的类并注入端口:

@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
@ActiveProfiles(ConfigConstants.PROFILE_LOCAL)
public abstract class TestBase{

    @Autowired
    protected TestRestTemplate restTemplate;

    @LocalServerPort
    public int httpPort;

    ...
}

我的测试类继承了Testbase.class和 使用相同的端口。

设置:

  • 测试库
  • A 类扩展了 TestBase
  • B 类扩展了 TestBase
  • ...

在日志中,我可以看到不止一个 Spring Server,因为 Spring ASCI 标志出现了好几次。

有没有办法启动一次 WebEnvironment 并将它们共享给我的所有测试?

问候蒙蒂

山姆·布兰宁

有没有办法启动一次 WebEnvironment 并将它们共享给我的所有测试?

这会自动发生,假设您没有在更改上下文缓存键的子类中提供其他配置

详细信息可以在 Spring 参考手册上下文缓存部分找到

问候,

Sam(Spring TestContext Framework 的作者

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何处理使用正则表达式指定的xml文件路径,以支持Spring进行集成测试的多个环境?

仅使用一个Bean的Spring Context测试

如何使用现有应用程序的spring配置类仅测试一个bean?

构建一个测试,该测试使用在本地主机上运行的基于Spring的REST API URL进行测试

启动多个spring boot实例,但启动一个主机名以进行本地开发

在一个请求中从JS到Spring进行多个STOMP订阅

如何使用Spring Boot CRUD API使用一个POST端点在多个表中插入数据

如何在Spring Boot中产生一个肥皂网络服务?

在Spring的单个事务中如何使用多个数据源(一个用于读取,另一个用于写入)?

如何在同一个Spring Boot应用程序中使用多个“ JWK Set Uri”值?

如何使用Spring Boot将数据从一个html表单传递到多个表

使用Spring + Hibernate进行测试

在Spring中可以使用多个引用进行自动装配,但是bean仅需要使用其中一个引用

如何使用一个 Dockerfile dockerizing 一个 spring boot 应用程序?

如何在一个注解中合并许多Spring测试注解?

测试使用Spring嵌入式卡夫卡一个@KafkaListener

Spring:在测试类中注册一个组件

Spring和Angular:如何在一个条件下一个接一个地进行两个http调用

我如何使用Spring识别Spring的第一个大写字母

Spring-MVC:如何确保多个用户能够按顺序调用一个方法

如何在spring-mvc中将URL的多个段映射到一个PathVariable?

如何在一个参数中查找多个项目Spring Data JPA

如何在一个存储库中具有多个spring boot应用程序?

如何在spring boot中存储一个xml节点的多个值?

在Spring中没有解析第一个环境变量时如何定义第二个环境变量?

是否可以让多个监听者使用spring amqp监听同一个队列

Spring Boot:如何指定一个在application.properties中带有破折号的环境变量?

Spring创建一个单例的多个实例?

一个@Service在Spring中用于多个实体