Help us understand the problem. What is going on with this article?

Kotlinでテストコードを書く

More than 1 year has passed since last update.

0.はじめに

 最近テストコードに興味を持っているので、少しずつ書いていこうかなと思っています。
今回は、IntelliJでテストコードを通したところまで記事にします。

※IntelliJ導入方法は省略しています。

1.プロジェクト作成

メニューバーより [File] -> [New] -> [Project] の順でプロジェクトを作成
0.png

新規プロジェクト作成ウィンドウから以下を選択
・Java
・SDK(Java9.0)
・Kotlin/JVM

1.png

[Next] ボタンを押してプロジェクト名を入力
2.png

2.ファイル作成

フォルダ構成(?)より [src] -> [New] ->[Kotlin/Class] を選択

3.png

クラス名を入力
・Sampleとしました。
4.png

同じ様にしてSampleTestクラスも作成しておきます。

3.ソースコードの書き出し

簡単なエコーを確認していきます。

Sampleクラス
 ・エコー(引数をそのまま返す)メソッドの実装

Sample.kt
class Sample {
    fun echo(value : Int) : Int {
        return value
    }
}

SampleTestクラス
 ・エコーメソッドのテストコードを実装

SampleTest.kt
import org.junit.Test
import kotlin.test.assertEquals
import kotlin.test.assertNotEquals

class SampleTest {

    // OKケース1
    @Test
    fun SampleTest001 () {
        var sample = Sample()
        assertEquals(10,sample.echo(10))
    }

    // OKケース2
    @Test
    fun SampleTest002 () {
        var sample = Sample()
        assertEquals(-15,sample.echo(-15))
    }

    // NGケース1
    @Test
    fun SampleTest100 () {
        var sample = Sample()
        assertNotEquals(10,sample.echo(20))
    }

}

※ import kotlin.test.assertEquals 手書きが必要かも

4.実行

[右クリック] -> [Run 'SampleTest'] よりテスト実行

6.png

実行結果はこの通り

5.png

5.感想とか

 テストコードを実行する開発環境が提供されていたので特に詰まることなく進められた。
ただし、assertEqualsメソッドのインテリジェンスが最初だけ効かないので打ち込むのが少し面倒。

今回は3ケースで書いたけど、カバレッジとか観点とかは今後のタスクとして覚えておこうと思う。

Fravash
好きな食べ物はトマト 投稿内容でお気づきの点等ございましたら気軽にコメントください。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away