build.gradleにtest結果をブラウザで表示させるタスクの追加
デスクトップでプログラミングするモチベーションが高まったので、javaとかいろいろそろえてみた。
プロジェクトの環境は、openJDK 14 と gradle 6.3。
> gradle test
でテストの実行、カバレッジ表示用のhtmlが表示される。
だから、これをコマンドラインから表示させたかった。
なので、
① 新しいタスクの追加 ② 既存タスク test の実行(依存) 以下、実行フェーズで ③ テストカバレッジHTMLのパスの取得 ④ パスが存在したらそのファイルをブラウザで開く
っていう流れで新しいタスクを追加した。
task openTest { dependsOn "test" doFirst { def path = Path.of(System.getProperty("user.dir") + "\\build\\reports\\tests\\test\\index.html") if(Files.exists(path)) { Desktop.getDesktop().browse(path.toUri()) } } }
やっつけで書いた....
doFirst 外で書くと全部実行されるというワナとかdependsOnは実行フェーズ内で書けないとか知見が多かった。
これずっとnvimで書いてたのでnvim用のプラギン探さないとな。てか既にブラウザにカバレッジ出すタスクありそう。