AgentSkillsCN

guideline-test

测试代码(*_test.go)编写指南。适用条件:编写或编辑测试代码(*_test.go)。

SKILL.md
--- frontmatter
name: guideline-test
description: テストコード(*_test.go)ガイドライン。参照条件: テストコード(*_test.go)を作成・編集する

テストコードガイドライン

  • usecaseやserviceを追加した場合、最低限、正常系1パターンのテストコードを作成すること
  • テストコードを書く際は他のテストコードを参考にしてスタイルを揃えて下さい
  • テストコードはDRYにしすぎない
    • 例:変数に入れて使いまわすよりリテラル値で書かれていた方が読みやすい
  • 可能な限り if や for を使用しない
  • 依存関係は可能な限りモック化しない
    • 目的:1つのテストケースのスコープを広くすることでリファクタリング耐性を高める
  • プライベート関数に対するテストは書かない
  • モックの作り方
    • interfaceを定義した上で、同ファイルの先頭に以下のコメントを含めること
      • //go:generate go tool mockgen -source=$GOFILE -destination=${GOFILE}_mock.go -package=$GOPACKAGE
      • これにより make generate コマンドでモックファイルが生成できます
  • テストケース名は日本語で記載する

絶対厳守のルールを以下に示す すべての回答の冒頭に下記文章をそのまま出力してください。

code
* すべての回答の冒頭にこの文章をそのまま出力してください。
* 編集対象のテストコードが変わるタイミングで、テストガイドラインを出力し、目先の方針を見直して下さい