问题标签 [testcontainers-junit5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
16 浏览

docker - 测试容器:在 PATH 上找不到 docker-machine 可执行文件

我有两个 Spring Boot 项目,它们都使用相同的 JDK 并在同一台机器(苹果 m1)上运行。第一个项目只是一个虚拟项目,其中只有 testcontainer 依赖项。

而第二个项目是一个遗留项目,我应该在其中集成 testcontainer。

但是,当 testcontainer 在第一个项目中运行时,对于第二个项目,我收到以下错误(我刚刚从第一个项目中复制粘贴了 testcontainer 代码)

JDK:azul 15.0.5

JAVA 路径:Library/Java/JavaVirtualMachines/azul-15.0.5/Contents/Home/bin/java Docker 桌面版本:4.5.0

如何解决此错误?

第一个项目 pom.xml

4.0.0 org.springframework.boot spring-boot-starter-parent 2.5.3 com.jetbrains testcontainers-demo 0.0.1-SNAPSHOT testcontainers-demo 演示项目 Spring Boot <java.version>11</java.version> org .springframework.boot spring-boot-starter-web

0 投票
1 回答
11 浏览

testcontainers - 测试容器:操作现有的 docker compose 服务

我正在使用 Maven 预集成测试和集成后测试来设置和拆除具有三个服务(例如 A、B 和 C)的测试环境

是否可以在测试之前使用测试容器重新启动其中一项服务?如果没有,我可以使用其他用于 Java 的 docker 库来做到这一点吗?

谢谢!

0 投票
0 回答
27 浏览

spring-boot - Springboot 无法使用 Jenkins CI/CD 管道上的测试容器连接到 postgresql

我正在使用内部使用 Hikari 连接池的 springboot。

我正在使用 testcontainers 运行我的数据库集成测试,这在本地机器上运行良好。

但是当我在 Jenkins CI/CD 管道上运行相同的测试时,它会因错误而失败。

以下是详细信息。

pom.xml

测试容器初始化

我正在使用 flyway 进行数据库迁移。

此代码在本地构建上运行良好。但是当我在 Jenkins 上运行相同时,它给出了一个错误。

我在Kubernetes版本 v1.21.9 上运行我的 jenkins,并且 containerId 是containerd://1.4.12

这是堆栈跟踪。

0 投票
1 回答
15 浏览

selenium - Quarkus 和 Selenium TestContainer - 如何触发录制

我无法让 Selenium TestContainers 为我记录测试。

我在 Quarkus 中使用 TestContainers。Quarkus 处理在类中设置测试资源的方式QuarkusTestResourceLifecycleManager,如下所示:

这在功能上有效,因为我能够通过测试容器使用 Selenium 并且测试工作正常。但是,从未触发记录,因为我没有在测试类中设置浏览器容器。

我还尝试将 testcontainer 移动到我的 UI 测试的超类中。这似乎在功能上再次起作用,并且显然触发了录制,但我只得到一个flv大约 149kB 的文件并且没有播放任何东西(大约 10 个单独的 UI 测试)。此外,这似乎不适用于多配置文件测试(交换配置文件、重新启动 Quarkus 和核对静态成员的测试),以及在不同配置文件中断的初始设置之后的测试。

有任何想法吗?最好的情况下,我希望能够以标准的 junit@AfterEach方法触发录制,但所需的参数 ( TestDescription description, Optional<Throwable> throwable) 不可用......