Docker撰写JUnit规则
这是一个用于执行与Docker Compose托管容器进行交互的JUnit测试的库。 它支持以下内容:
在测试之前启动在docker-compose.yml中定义的容器,然后将其拆除
在运行测试之前等待服务可用
记录容器中的日志文件以帮助调试测试失败
我为什么要用这个?
此处的代码从对我们其中一种产品的端到端测试开始。 我们需要在互不兼容的各种不同配置和环境中测试该产品,因此需要多个Docker Compose文件,因此在Gradle中运行docker-compose up的简单模型不足。
如果您在使用Docker进行测试时遇到以下任何情况,则该库有望为您提供帮助:
编排多个服务并将端口映射到Docker计算机外部,以便可以在测试中进行断言
需要知道服务何时启动,以防止由于启动速度慢或服务依赖关系复杂而导致的闪烁测试
由于日志丢失,对在CI服务器上进行测试期间Docker容器中发生的事情缺乏了解
由于在CI构建主机上需要打开端口而导致测试失败,该端口与测试配置冲突
使用简单
将依赖项添加到您的项目。 例如,在gradle中:
repositor
1