【问题标题】:Maven is not finding scala testsMaven 没有找到 scala 测试
【发布时间】:2012-11-18 22:47:42
【问题描述】:

我有一个 Scala 测试类,但是当我尝试使用 Maven 目标“测试”运行时 测试没有运行。我收到 Maven 消息“没有要运行的测试”。即使测试位于 scala 测试类中。我需要添加额外的配置吗?

这是我的包设置:

这是针对 pom 文件运行时 Maven“测试”目标的输出:

[INFO] 正在扫描项目... [INFO]
[信息] -------------------------------------------------- ---------------------- [INFO] 构建 scala.maven.test 0.0.1-SNAPSHOT [INFO] -------------------------------------------------- ---------------------- [INFO] [INFO] --- maven-resources-plugin:2.4.3:resources (默认资源)@ scala.maven.test --- [警告] 使用平台 编码(实际上是 Cp1252)复制过滤的资源,即构建是 平台依赖! [INFO] 复制 0 资源 [INFO] [INFO] --- maven-scala-plugin:2.9.1:add-source (scala-compile-first) @ scala.maven.test --- [INFO] 添加源目录: C:\workspaces\29112012\scala.maven.test\src\main\scala [INFO] 添加测试 源码目录: C:\workspaces\29112012\scala.maven.test\src\test\scala [INFO] [INFO] --- maven-scala-plugin:2.9.1:compile (scala-compile-first) @ scala.maven.test --- [错误] C:\workspaces\29112012\scala.maven.test\src\main\java [错误] C:\workspaces\29112012\scala.maven.test\src\main\scala [错误] C:\workspaces\29112012\scala.maven.test\src\test\scala [信息] 编译2个源文件到 C:\workspaces\29112012\scala.maven.test\target\classes [INFO] [INFO] --- maven-compiler-plugin:2.0.2:compile (default-compile) @ scala.maven.test --- [INFO] Nothing to compile - 所有的类都由 date [INFO] [INFO] --- maven-compiler-plugin:2.0.2:compile (默认) @ scala.maven.test --- [INFO] 没有要编译的东西 - 所有类都已启动 迄今为止 [INFO] [INFO] --- maven-resources-plugin:2.4.3:testResources (default-testResources) @ scala.maven.test --- [警告] 使用 平台编码(实际上是 Cp1252)复制过滤的资源,即 构建依赖于平台! [INFO] 复制 0 个资源 [INFO] [INFO] --- maven-scala-plugin:2.9.1:testCompile (scala-test-compile) @ scala.maven.test --- [错误] C:\workspaces\29112012\scala.maven.test\src\test\java [错误] C:\workspaces\29112012\scala.maven.test\src\test\java..\scala [信息] 将 1 个源文件编译为 C:\workspaces\29112012\scala.maven.test\target\test-classes [信息] [信息] --- maven-compiler-plugin:2.0.2:testCompile (default-testCompile) @ scala.maven.test --- [INFO] 没有要编译的东西 - 所有类都是最新的 [INFO] [INFO] --- maven-surefire-plugin:2.7.1:test (default-test) @ scala.maven.test --- [INFO] Surefire 报告目录: C:\workspaces\29112012\scala.maven.test\target\surefire-reports

----------------------------------- -------- 测试 -------------------------------------------------- ----- 没有要运行的测试。

结果:

测试运行:0,失败:0,错误:0,跳过:0

[信息] -------------------------------------------------- ---------------------- [信息] 构建成功 [信息] -------------------------------------------------- ---------------------- [INFO] 总时间:11.354s [INFO] 完成时间:11 月 30 日星期五 16:57:05 GMT

2012 [INFO] 最终内存:7M/17M [INFO]

这是我的 pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>scala.maven.test</groupId>
  <artifactId>scala.maven.test</artifactId>
  <version>0.0.1-SNAPSHOT</version>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.scala-tools</groupId>
                    <artifactId>maven-scala-plugin</artifactId>
                    <version>2.9.1</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.0.2</version>
                </plugin>
                <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
                <plugin>
                    <groupId>org.eclipse.m2e</groupId>
                    <artifactId>lifecycle-mapping</artifactId>
                    <version>1.0.0</version>
                    <configuration>
                        <lifecycleMappingMetadata>
                            <pluginExecutions>
                                <pluginExecution>
                                    <pluginExecutionFilter>
                                        <groupId>
                                            org.scala-tools
                                        </groupId>
                                        <artifactId>
                                            maven-scala-plugin
                                        </artifactId>
                                        <versionRange>
                                            [2.9.1,)
                                        </versionRange>
                                        <goals>
                                            <goal>add-source</goal>
                                            <goal>compile</goal>
                                            <goal>testCompile</goal>
                                        </goals>
                                    </pluginExecutionFilter>
                                    <action>
                                        <ignore></ignore>
                                    </action>
                                </pluginExecution>
                            </pluginExecutions>
                        </lifecycleMappingMetadata>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.scala-tools</groupId>
                <artifactId>maven-scala-plugin</artifactId>
                <executions>
                    <execution>
                        <id>scala-compile-first</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>compile</goal>
                        </goals>
                    </execution>                                    
                    <execution>
                        <id>scala-test-compile</id>
                        <phase>process-test-resources</phase>
                        <goals>
                            <goal>testCompile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>compile</phase>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

<dependencies>
  <dependency>
    <groupId>org.scalatest</groupId>
    <artifactId>scalatest_2.9.0-1</artifactId>
    <version>2.0.M5</version>
</dependency>
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
</dependency>
</dependencies>



</project>

【问题讨论】:

    标签: eclipse scala maven


    【解决方案1】:

    尽管这是一个很晚的回复,但我写它是希望有人可以从中受益,以防他们的 scala 单元测试未被发现。主要和沉默的罪魁祸首之一是测试类的绝对路径。如果路径上任何目录的名称中有空格,scalatest 不会选择它。重命名此类目录以成功运行单元测试。

    【讨论】:

      【解决方案2】:

      你的测试类名称是什么? Maven 可能非常挑剔,默认情况下我认为它要求类名以“Test”结尾。

      查看我之前的帖子: Maven won't run tests

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-07-28
        • 1970-01-01
        • 1970-01-01
        • 2019-03-19
        • 1970-01-01
        • 2021-01-12
        • 2014-04-23
        • 1970-01-01
        相关资源
        最近更新 更多