Модульное тестирование (unit testing) позволяет проверить на корректность отдельные модули исходного кода программы. Сами тесты пишутся на языке Scala с использованием библиотек, которые автоматизируют выполнение тестов, а также предоставляют DSL для их написания.
Мы будем использовать библиотеку ScalaTest версии 1.8
для DSL, а также JUnit версии 4.11
для запуска тестов. Узнать последние версии можно, просмотрев индекс центрального репозитория.
Откройте pom.xml
. В разделе <build>
добавьте следующую строку после закрывающего тэга </sourceDirectory>
:
<testSourceDirectory>src/test/scala</testSourceDirectory>
Найдите раздел <dependencies>
, допишите следующий фрагмент перед закрывающим тэгом </dependencies>
:
<dependency>
<groupId>org.scalatest</groupId>
<artifactId>scalatest_2.10.0</artifactId>
<version>1.8</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
В разделе <build>
→ <plugins>
найдите плагин maven-scala-plugin
и допишите следующий фрагмент перед закрывающим тэгом </executions>
:
<execution>
<id>scala-test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
Сверьте Ваш pom.xml
с образцом.
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>pro.savant.circa</groupId>
<artifactId>blank</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.0</version>
</dependency>
<dependency>
<groupId>org.scalatest</groupId>
<artifactId>scalatest_2.10.0</artifactId>
<version>1.8</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<sourceDirectory>src/main/scala</sourceDirectory>
<testSourceDirectory>src/test/scala</testSourceDirectory>
<plugins>
<plugin>
<groupId>org.scala-tools</groupId>
<artifactId>maven-scala-plugin</artifactId>
<version>2.15.2</version>
<executions>
<execution>
<id>scala-compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>scala-test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>pro.savant.circumflex</groupId>
<artifactId>maven-cx-plugin</artifactId>
<version>3.0-RC1</version>
</plugin>
</plugins>
</build>
</project>
Зафиксируйте работу в Git:
git add -A
git status
git commit -m "Configured unit testing."
Scala Console | Подведение итогов |