Kotlinレポジトリのidea pluginやJ2Kのテスト実行方法メモ

Kotlin1.1.50あたりからビルドスクリプトがgradle(Gradle Kotlin Script)になった。その影響かテストの実行方法が変わっていたので、メモしておく

※以下の情報は古くなる可能性が高いのでまずはKotlin(github)のReadmeを先に読んでください

Gradleタブから実行

IntellijのGradleタブからtestを実行するタスクを見つけて実行する
だいたいはTasksverificationにあると思う

f:id:scache:20171002231145p:plain:w300

Gradleのタスクを直接実行する

Gradleなのでターミナルから直接テストタスクを実行することができる

テストの実行

例: ideaのテストを実行

./gradlew :idea:cleanTest :idea:test

テスト結果はbuildディレクトリの中に作成される

一部のテストだけ実行する

一部のテストだけ実行したいという場合がよくあると思うが、その場合は--testsオプションを使うと良い

例: ideaのorg.jetbrains.kotlin.addImportパッケージ内のテストのみ実行

./gradlew :idea:cleanTest :idea:test --tests org.jetbrains.kotlin.addImport.*

Projectツリーから実行

Intellijの設定

Readmeにも少し書いてあるが、以下のページを開き
Preferences -> Build, Execution, Deployment ->Build Tools -> Gradle -> Runner

Delegate IDE build/run actions to Gradleをチェックする。書いてある通り、チェックをするとビルドや実行のアクションをGradleに移譲することができる

f:id:scache:20171002225618p:plain:w400

テストの実行

設定が終わったらIntellijでプロジェクトツリーでテストコードがあるディレクトリを開き、右クリックをしてRun Testする

f:id:scache:20171002232833p:plain:w400

一部のテストのみ実行する

RunTestを行うと新しくRun Configurationが作られていると思うので、Edit Configurationsから編集を行う
Gradleタスクの引数で制御する形になるのでArgumentsに条件を書く

f:id:scache:20171002234650p:plain:w400