JenkinsとCoberturaを使用したMavenプロジェクトのコードカバレッジ計測
サンプルアプリケーションの作成
まず、Mavenプロジェクトを作成し、メインのロジッククラスを作成します。ここでは、シンプルな条件分岐を含む計算処理を実装した MathUtility クラスを src/main/java 配下に定義します。
package com.example.calc;
public class MathUtility {
public MathUtility() {
}
/**
* 基礎値とボーナス値を計算するメソッ ...
6月25日 17:42 投稿
SpringBootでの単体テスト実行エラー:maven-surefire-pluginのバージョン問題
問題現象
Spring Bootプロジェクトで単体テストを作成する際に、JUnit 4.13.2以上のバージョンを使用しています。
Mavenが単体テストを自動実行するために、Maven SurefireまたはMaven Failsafeプラグインの導入が必要です。
プロジェクトで使用しているmaven-surefire-pluginのバージョンは2.22.2で、mvn clean packageコマンドでのパッケージング時、単体テストが実行 ...
6月23日 20:00 投稿
Spring Bootテストにおける「java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration」の解決策
問題の概要
Spring Cloudプロジェクトで@SpringBootTestアノテーションを使用して単体テストを実行すると、以下のエラーが発生することがあります。
java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
原因の分析
@SpringBootTestアノテーションは、テ ...
6月21日 22:02 投稿
Javaにおけるユニットテスト、XML、アノテーションの基礎
ユニットテスト
ユニットテストは、ソフトウェアの最小機能単位に対してテストコードを記述する手法です。Javaでは最小機能単位はメソッドであるため、ユニットテストはJavaメソッドの正確性を検証するために使用されます。
従来の問題点: mainメソッド内でのテストは、一つのメソッドが失敗すると他のメソッドのテストに影響を及ぼします。
JUnitの利点:
テストメソッド ...
6月20日 00:33 投稿
Javaクラスの初期化順序
継承なしの場合:
1. 実行順序
静的メンバ変数
静的コードブロック
通常のメンバ変数
通常のコードブロック
コンストラクタ
2. 要約:
静的 -> 通常
変数 -> コードブロック -> コンストラクタ
コンストラクタは最後に実行される
3. サンプルコード:
public class Parent {
private static String name = "zct" ...
6月19日 16:12 投稿
ユニットテストの実践ガイド
ユニットテストはコード内の最小テスト可能単位(通常は関数やメソッド)が期待通りに動作することを検証します。システムの他の部分から独立し、特定の機能に焦点を当てる必要があります。
優れたユニットテストはコード品質と保守性を確保し、問題の迅速な特定やリファクタリング時の安全性を提供します。以下に効果的な実践方法を示します。
テスト設計の原則
可読 ...
6月16日 17:44 投稿
JUnitによるJavaユニットテストの実践
JUnitテストフレームワークの概要
JUnitはJavaアプリケーションのユニットテストを効率的に行うためのフレームワークです。このツールにより、開発者はコードの正確性を検証しながら品質を保つことができます。
ユニットテストの重要性
ユニットテストはソフトウェアの最小実行単位(通常はメソッド)を検証する手法です。JUnitはアノテーションとアサーションメソッドを ...
5月27日 10:58 投稿
Maven Surefire Pluginテスト失敗の解決方法
Mavenプロジェクトでテスト実行時に発生する「Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin」エラーの解決方法について説明します。
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.1:test
(default-test) on project sample-project: There are test failures.
問題の原因
このエラーは主に以下の状 ...
5月17日 22:05 投稿
ソフトウェアテストの包括的ガイド
ソフトウェアテの基本概念
現代のテクノロジー発展に伴い、ソフトウェアの規模はますます拡大し、多くの業界の中核業務を支えています。これらの大規模ソフトウェアを実行する際には、プログラムの正確性と信頼性を維持することが極めて重要です。エラーによる不必要な損失を防ぐため、ソフトウェアテスト(Software Testing)はソフトウェア品質管理において最も直接的 ...
5月15日 23:09 投稿
Java Webアプリケーションにおけるサーバー統合とログ管理
1. サーバー統合の実装
1.1 プロジェクト準備
既存の学生情報管理システムをブラウザからアクセス可能なWebアプリケーションに改造します。
既存コードを現在のプロジェクトにコピー
パッケージパスの不整合を修正
HTTPリクエスト解析と動的リソース処理機能を実装
1.2 HTTPリクエスト処理クラス
URLパラメータを解析し、Map形式で管理するHttpRequestクラスを実装します ...
5月14日 02:59 投稿