Hatena::Groupprogram

ひとり開発日記。 このページをアンテナに追加 RSSフィード

2013/10/16 (Wed)

Mavenコマンドラインで、テストのカバレッジを取る

| Mavenコマンドラインで、テストのカバレッジを取る - ひとり開発日記。 を含むブックマーク はてなブックマーク - Mavenコマンドラインで、テストのカバレッジを取る - ひとり開発日記。

テーマは、掲題の通り。

参照にしたのは上記二つの記事

まず、pom.xmlに、各種プロパティ値を設定

	<properties>
		<jdk.version>1.7</jdk.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<site.encoding>UTF-8</site.encoding>
		<jacoco.include.package>(パッケージトップ).*</jacoco.include.package>
	</properties>

そして、pom.xmlに、プラグイン、リポートの設定を追加。

	</plugins>
		...

		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-surefire-plugin</artifactId>
			<version>2.15</version>
			<configuration>
				<argLine>${jacocoArgs}</argLine>
			</configuration>
		</plugin>
		<plugin>
			<groupId>org.jacoco</groupId>
			<artifactId>jacoco-maven-plugin</artifactId>
			<version>0.6.3.201306030806</version>
			<executions>
				<execution>
					<id>prepare-agent</id>
					<phase>test-compile</phase>
					<goals>
						<goal>prepare-agent</goal>
					</goals>
					<configuration>
						<propertyName>jacocoArgs</propertyName>
							<includes>
							<include>${jacoco.include.package}</include>
						</includes>
					</configuration>
				</execution>
				<execution>
					<id>report</id>
					<phase>prepare-package</phase>
					<goals>
						<goal>report</goal>
					</goals>
				</execution>
			</executions>
		</plugin>
	</plugins>
<reporting>
	<plugins>
		<plugin>
			<groupId>org.jacoco</groupId>
			<artifactId>jacoco-maven-plugin</artifactId>
		</plugin>
	</plugins>
</reporting>

これを設定した後、pom.xml直下のディレクトリで、以下をコマンドラインで入力します

mvn clean jacoco:prepare-agent test jacoco:report

すると、テストが走り、テストのカバレッジが、 target/site/jacoco/index.html に書き出されますよ。

トラックバック - http://program.g.hatena.ne.jp/halflite/20131016