我遇到的问题是 Testcontainers 正确启动所有容器,但之后测试未运行。我在日志中也没有收到相关错误。
有趣的是,在 Linux 机器上相同的 Java 项目一切都运行良好。测试刚刚启动并运行良好。
我当前的设置,出现问题的位置如下:
- Gradle 版本 6.x(在旧版本上也失败)
- Testcontainers 版本 1.13.0(在旧版本上也失败)
- Java 11 和 13(不同的项目遇到相同的问题)
- Windows >= 1909
- Docker 桌面 2.2.0.5
正如我之前提到的,测试在 Linux 上运行良好,但在 Windows 上则不然。几个月前,测试在 Windows 上也运行良好。在某些时候他们不再这样做了。在我看来,大约是在我将 Windows 机器更新到 1909 的时候。不幸的是,我对此并不完全确定。
有人对可能出现的问题以及我可以在哪里找到更多信息有一些建议/想法吗?
最佳答案
最后,这是我这边的一些愚蠢的错误。发生了两件事。
我使用的新 Postgres Docker 镜像更改了其身份验证机制,因此应用程序无法再连接到数据库,需要“POSTGRES_HOST_AUTH_METHOD = trust”。
即使添加了环境变量,也无法连接。那是因为我的笔记本电脑上同一端口上运行着另一个 postgres,但我忘记了。
关于java - Testcontainers - 容器正确启动,但 Junit 测试未在 Windows 上启动(可能自 1909 更新以来),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61007515/