A

kotlin-testing

作成者 affaan-m

kotlin-testing は、Kotest、MockK、コルーチンテスト、プロパティベーステスト、Kover によるカバレッジを使った Kotlin のテスト自動化を実践的に学べるガイドです。TDD に沿ったワークフローで、より分かりやすいユニットテストやコンポーネントテストを書き、依存関係のモック化やサスペンド関数のテストで迷いを減らすために、この kotlin-testing skill を活用できます。

スター156.2k
お気に入り0
コメント0
追加日2026年4月15日
カテゴリーTest Automation
インストールコマンド
npx skills add affaan-m/everything-claude-code --skill kotlin-testing
編集スコア

この skill は 78/100 で、掲載する価値があります。Kotlin テストの流れを明確に示し、具体的なツール選定と、導入判断に十分な構成を備えています。一方で、補助ファイルや運用面のパッケージングが不足しており、導入の手間をさらに下げる余地があるため、ディレクトリ利用者には「堅実だが、まだ磨き込み途中」の skill と見なすのがよいでしょう。

78/100
強み
  • Kotlin のテスト作成、カバレッジ、TDD、プロパティベーステストに対して、使いどころが明確でトリガーしやすい。
  • 作業フローが明示されている: 対象コードを特定し、Kotest の spec を書き、MockK でモックし、RED/GREEN を回して、リファクタリングし、Kover のカバレッジを確認する。
  • 分量があり、具体例や repository/file の参照も豊富で、単なる薄いプレースホルダーではないことがうかがえる。
注意点
  • インストールコマンドやサポートファイルがないため、セットアップや統合は手動で解釈する場面が多くなる可能性がある。
  • プレースホルダーマーカー('todo')が含まれており、一部のセクションは未完成、またはエッジケースでの信頼性がやや低い可能性がある。
概要

kotlin-testing の概要

kotlin-testing は何のためのものか

kotlin-testing は、Kotlin プロジェクトでテストを書く・改善するための実践ガイドです。多くのチームが実際に必要とする作業、つまり Kotest のスタイル選定、MockK による依存関係のモック化、コルーチンの正しいテスト、そして property-based テストや Kover のカバレッジ活用を、テストコードをひたすら定型文だらけにせず進めることに重点を置いています。

どんな人がインストールすべきか

Kotlin アプリにテストを追加したいとき、チームのテスト方針を標準化したいとき、あるいは Kotlin らしい書き方に合った TDD 寄りのワークフローを求めているなら、kotlin-testing skill をインストールする価値があります。特に、場当たり的なテスト指示ではなく、再現性のあるパターンが必要な JVM Kotlin プロジェクトの開発者に向いています。

どんな場面に最適か

この skill は、E2E のフレームワーク構築ではなく、信頼できる unit / component カバレッジを得ることが目的のテスト自動化タスクに向いています。最初のテストを書きたいとき、壊れやすいアサーションをリファクタしたいとき、Kotlin 特有のやり方で mocks と coroutines を使ってコードを分離したいときに役立ちます。

kotlin-testing skill の使い方

ワークスペースに kotlin-testing をインストールする

まずリポジトリのインストール手順で skill を追加し、その後テストコードを依頼する前にエージェントを skills/kotlin-testing のコンテキストに向けてください。repo に示されている基本のインストールコマンドは次のとおりです。
npx skills add affaan-m/everything-claude-code --skill kotlin-testing

最も効果が出るのは、Kotlin コードが実際に置かれているのと同じ workspace にインストールすることです。そうすると、skill が実ファイル名、package 名、build tool を前提に使えます。

テスト可能な Kotlin の対象を明示する

kotlin-testing skill は、1 つの具体的な対象と 1 つの期待結果をプロンプトで示したときに最もよく機能します。たとえば、class 名や function 名、すでに使っている framework、coroutine の挙動、mock のルール、coverage 閾値などの制約を含めると精度が上がります。

プロンプトの例:
Use kotlin-testing to write Kotest tests for UserService.createUser. Mock the repository with MockK, cover success and duplicate-email failure paths, and keep the tests compatible with our Gradle/Kover setup.

先に読むべきファイルを押さえる

まず SKILL.md を読み、その後に README.mdAGENTS.mdmetadata.json、さらに存在するなら rules/resources/references/scripts/ フォルダも確認してください。この repo では SKILL.md が主な正本なので、プロンプトを書く前に「When to Use」「How It Works」「Examples」の各セクションを読むのが最短ルートです。

スニペットだけでなく、ワークフロー全体を使う

この repo は test-first の流れを前提に整理されています。つまり、対象を特定し、Kotest spec を書き、依存関係を mock 化し、失敗するテストを実行し、コードを実装し、最後に ./gradlew koverHtmlReport で coverage を確認する、という順序です。単なるサンプルのアサーション集ではなく、実行手順までほしいときにこそ、この skill は力を発揮します。

kotlin-testing skill の FAQ

kotlin-testing は TDD 専用ですか?

いいえ。skill の標準ワークフローは TDD ですが、既存の Kotlin コードに後からテストを足す場面でも十分役立ちます。すでに実装があるなら、この skill を使って、狙いを絞った coverage と読みやすい mocks を追加できます。

普通のプロンプトの代わりになりますか?

Kotest のどの style を使うか、coroutines をどう mock するか、coverage をどう考えるかといった Kotlin 固有の判断が必要なときは、通常のプロンプトより有効です。一般的なプロンプトでもテストは書けますが、kotlin-testing を使うと framework 選定や test structure に関する迷いを減らせます。

初心者でも使いやすいですか?

はい。1 つの Kotlin の unit や class を説明できて、ガイド付きのテスト計画がほしいなら使いやすいです。一方で、build system が分からない、まだテスト対象が決まっていない、あるいは具体的なテストコードより広いアーキテクチャ助言が欲しい場合には、効果は薄くなります。

どんなときに kotlin-testing を使うべきではありませんか?

ブラウザ自動化、API 契約テスト、Kotlin 以外の testing stack の代わりとして使うべきではありません。主な課題が infrastructure、壊れやすい integration 環境、test data 管理にあるなら、kotlin-testing よりも、より広い test automation skill のほうが適しています。

kotlin-testing skill を改善するには

「テストを書いて」より具体的な文脈を与える

kotlin-testing の結果を良くするには、入力を具体的にすることが重要です。対象の class、public methods、重要な分岐、そして合わせたい既存の test style を明示してください。Kotest の StringSpecFunSpecBehaviorSpec のどれがよいかも伝えると、可読性と構成が大きく変わります。

厳しい制約は最初に伝える

suspending function、flow、private collaborator、厳密な coverage gate を使っているなら、生成前に必ず伝えてください。たとえば、Use MockK for the repository, test this suspend function with coroutine test support, and keep the assertions compatible with Kover coverage goals. のように書くと、意図がぶれません。

失敗パスの coverage も依頼する

この skill が最も役立つのは、「1 つの成功テスト」だけでなく、成功パスと失敗パスの両方を求めたときです。function が null を返す、例外を投げる、再試行する、入力を検証する、といった可能性があるなら、それらを明示して依頼してください。そうすることで、生成された suite をそのまま判断材料にできます。

テスト設計を絞り込んで反復する

最初の出力を受け取ったら、足りなかった点を踏まえてプロンプトを調整してください。エッジケース、命名規則、fixture の組み立て方、壊れやすい dependency などが該当します。kotlin-testing の改善サイクルで最も速いのは、生成された spec を見て、過剰に mock 化されている部分や coverage が足りない部分を洗い出し、まだ必要な分岐だけを指定してより狭く書き直してもらう方法です。

評価とレビュー

まだ評価がありません
レビューを投稿
このスキルの評価やコメントを投稿するにはサインインしてください。
G
0/10000
新着レビュー
保存中...