JavaのJUnitテストの書き方とは?@Testからテストメソッドの作り方まで理解する|確認問題の回答例

Schoo Java入門 中級 第3回 単体テストによるビジネスロジック検証

このページは、JavaのJUnitテストの書き方とは?@Testからテストメソッドの作り方まで理解するの確認問題を見直すためのページです。先に自分で書いてから、回答例と見比べてください。

確認問題の回答例

import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.jupiter.api.Test;

class DiscountCalculatorTest {

    @Test
    void testCalculateDiscountRate() {
        DiscountCalculator calculator = new DiscountCalculator();

        assertEquals(0, calculator.calculateDiscountRate(3000));
        assertEquals(0, calculator.calculateDiscountRate(4999));
        assertEquals(5, calculator.calculateDiscountRate(5000));
        assertEquals(5, calculator.calculateDiscountRate(9999));
        assertEquals(10, calculator.calculateDiscountRate(10000));
        assertEquals(10, calculator.calculateDiscountRate(15000));
    }
}

解説

500010000 で割引率が切り替わるため、境界値として 49995000999910000 を確認しています。

テストメソッドの中では、まず DiscountCalculator を準備し、その後 calculateDiscountRate を実行して、期待する戻り値を assertEquals で確認しています。

実務では、1つのテストメソッドにまとめるだけでなく、正常系や境界値ごとにテストメソッドを分けることもあります。まずは「準備、実行、確認」の流れを読めることを優先しましょう。

元の記事に戻る

JavaのJUnitテストの書き方とは?@Testからテストメソッドの作り方まで理解する