【问题标题】:Running single integration test inside docker in maven在 Maven 中的 docker 内运行单个集成测试
【发布时间】:2018-07-12 15:33:06
【问题描述】:

我正在尝试在 docker 容器内对我的 maven 项目运行集成测试。我正在使用 dockerfile-maven 插件将 jar 文件移动到我的 docker 容器中,并使用 maven-failsafe-plugin 来启动我的集成测试。但不知何故,集成测试在构建 docker 之前就开始了。它也不会调用我的测试函数。

这是我的 pom.xml sn-p。

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-failsafe-plugin</artifactId>
            <version>2.12</version>
            <executions>
                <execution>
                <goals>
                    <goal>integration-test</goal>
                </goals>
                <configuration>
                    <includes>
                        <include>**/*.java</include>
                    </includes>
                </configuration>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>com.spotify</groupId>
            <artifactId>dockerfile-maven-plugin</artifactId>
            <version>1.3.7</version>
            <executions>
                <execution>
                    <id>default</id>
                    <goals>
                        <goal>build</goal>
                        <goal>push</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <repository>rohitbarnwal7/presto_him</repository>
                <tag>${project.version}</tag>
                <buildArgs>
                    <JAR_FILE>plugin-${project.version}-jar-with-dependencies.jar</JAR_FILE>
                </buildArgs>
            </configuration>
        </plugin>

更新:使用上述配置,正在调用集成测试类,但实际上没有执行任何测试。

任何帮助将不胜感激。谢谢。

【问题讨论】:

  • 能否提供 docker maven 插件的 maven 配置?
  • 已在问题中更新。

标签: java maven docker integration-testing presto


【解决方案1】:

您需要将映像的构建绑定到在集成测试之前运行的 maven 阶段。

Bind Docker commands to Maven phases 中所述,您可以将构建 docker 映像绑定到特定的 maven 阶段,如下所示:

构建映像 编译 包裹

在这种情况下,构建映像将在 maven package 阶段进行,该阶段将在 integration-test 阶段之前运行

【讨论】:

  • 可以有任何目标来启动/运行 docker 镜像吗?基本上,如果我需要连接在 docker 内运行的服务器进行集成测试,我该如何执行测试。
  • 随着我更新的 pom.xml IntegrationTest 类被调用,但没有一个测试正在运行。结果:测试运行:0,失败:0,错误:0,跳过:0
  • 这个有什么帮助吗? stackoverflow.com/questions/48639730/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-28
  • 1970-01-01
  • 2014-11-25
  • 1970-01-01
  • 2023-01-09
  • 2013-04-07
相关资源
最近更新 更多