Versuchen, um ScalaTest arbeiten: "Es gibt keine tests ausführen" bei "mvn test"
Edit: ich habe es endlich an die Arbeit!!!
Brauchte es eine Kombination von JUnit in der pom.xml und drei Aussagen meine .scala:
import org.junit.runner.RunWith
import org.scalatest.junit.JUnitRunner
@RunWith(classOf[JUnitRunner])
Aus irgendeinem Grund, versuchen zu konfigurieren Surefire macht der tests stoppen Sie läuft wieder.
Ich bin Programmierung in IntelliJ, zu versuchen, um eine einfache ScalaTest test läuft über ein Maven - ( mvn test
) - build-Prozess. Es gibt keine Fehler, aber leider keine tests laufen.
Hier ist meine .scala-Datei:
import org.scalatest.FunSuite
import org.scalatest.BeforeAndAfter
class ExampleSuite extends FunSuite with BeforeAndAfter {
before {
println("Doing setup tasks...")
}
test("Example test of checking the browser title") {
val expected_title = "Company Platform"
var actual_title = "Company Platform"
assert(actual_title == expected_title)
}
after {
println("Doing teardown tasks...")
}
}
Hier ist die Maven-Ausgang:
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for JoeTestDemo:JoeTestDemo:jar:1.0
[WARNING] 'build.plugins.plugin.version' for org.scala-tools:maven-scala-plugin is missing. @ line 42, column 21
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building JoeTestDemo 1.0
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.4.3:resources (default-resources) @ JoeTestDemo ---
[WARNING] Using platform encoding (MacRoman actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ JoeTestDemo ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-scala-plugin:2.15.2:compile (default) @ JoeTestDemo ---
[INFO] Checking for multiple versions of scala
[INFO] includes = [**/*.scala,**/*.java,]
[INFO] excludes = []
[WARNING] No source files found.
[INFO]
[INFO] --- maven-resources-plugin:2.4.3:testResources (default-testResources) @ JoeTestDemo ---
[WARNING] Using platform encoding (MacRoman actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /Users/Joeshaver/Projects/JoeTestDemo/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ JoeTestDemo ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-scala-plugin:2.15.2:testCompile (default) @ JoeTestDemo ---
[INFO] Checking for multiple versions of scala
[INFO] includes = [**/*.scala,**/*.java,]
[INFO] excludes = []
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-surefire-plugin:2.7.2:test (default-test) @ JoeTestDemo ---
[INFO] Surefire report directory: /Users/Joeshaver/Projects/JoeTestDemo/target/surefire-reports
-------------------------------------------------------
T E S T S
-------------------------------------------------------
There are no tests to run.
Results :
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.368s
[INFO] Finished at: Tue Oct 23 10:58:30 PDT 2012
[INFO] Final Memory: 6M/81M
[INFO] ------------------------------------------------------------------------
Hier ist die pom.xml. Ich glaube, mein Maven-Scala-plugin könnte nicht richtig sein:
<?xml version="1.0" encoding="UTF-8"?>
<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>JoeTestDemo</groupId>
<artifactId>JoeTestDemo</artifactId>
<version>1.0</version>
<repositories>
<repository>
<id>scala-tools.org</id>
<name>Scala-tools Maven2 Repository</name>
<url>http://scala-tools.org/repo-releases</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>scala-tools.org</id>
<name>Scala-tools Maven2 Repository</name>
<url>http://scala-tools.org/repo-releases</url>
</pluginRepository>
</pluginRepositories>
<dependencies>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.9.0-1</version>
</dependency>
<dependency>
<groupId>org.scalatest</groupId>
<artifactId>scalatest_2.9.0-1</artifactId>
<version>1.6.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.scala-tools</groupId>
<artifactId>maven-scala-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
<configuration>
<sourceDir>src/main/java</sourceDir>
<jvmArgs>
<jvmArg>-Xms64m</jvmArg>
<jvmArg>-Xmx1024m</jvmArg>
</jvmArgs>
</configuration>
</plugin>
</plugins>
</build>
</project>
- Sie müssen nicht auf die JUnitRunner, um es arbeiten. Verwenden Sie die
scalatest-maven-plugin
statt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie auf Maven, dann wirst du entweder kommentieren Sie Ihre Testklasse(N) mit
Dies würde erfordern, dass Sie JUnit als Abhängigkeit. Oder Sie konnte die ScalaTest Maven-Plugin (bisher noch nicht genutzt habe, es mir aber).
Möchten Sie vielleicht die Verwendung der
scalatest-maven-plugin
zu laufen, Ihre scala-tests.Stellen Sie außerdem sicher, dass Sie die
<scope>test</scope>
für die Gläser benötigt, nur für test-Zwecke.Dies ist, wie ich definiert habe, meine
pom.xml
für die Verwendung ScalaTest:Wie Sie sehen können, habe ich auch Hinzugefügt einen Abschnitt, der deaktiviert die surefire-plugin, wenn Sie wirklich nicht wollen, um es auszuführen. Es ist eben in den oben genannten pom, aber wenn Sie möchten, deaktivieren Sie das surefire plugin nur kommentieren, dass ein Teil.
Ich bin mit IntelliJ zu und es gibt überhaupt keine Probleme mit dieser Kombination. Nur das ausführen der tests innerhalb von IntelliJ oder mit
mvn test
Sie beide arbeiten.Skip coloring output
Flagge. Ich war auf der Suche für Sie!Hinzufügen zu Blake ' s Antwort, neben
@RunWith(classOf[JUnitRunner])
möglicherweise müssen Sie auch um die todsichere, wie folgt:Hier ist einer meiner Maven-Projekte, die tests Prima ScalaTest ohne spezielle plugin: https://github.com/nikita-volkov/sext/