mcpField
R
rust-tests-guidelines

rust-tests-guidelines

github.com/redisearchテスト・品質6.2k71 回インストール今日更新
リポジトリ

rust-tests-guidelines について

rust-tests-guidelinesは、Rustコードのテスト作成に関する指針です。テスト設計、構成、Cシンボルの扱い方について基準を必要とする開発者向けです。

主な機能

  1. 01公開APIを通じたテストを優先
  2. 02比較しにくい出力にinstaを使用
  3. 03適切な不変条件にproptestを適用
  4. 04crateごとに統合テストを構成
  5. 05非公開APIが必要なテストをコードの近くに配置
  6. 06extern Cテストの要件を記載

活用シーン

  1. 01新しいRustコンポーネントのテストを計画
  2. 02公開・非公開APIのテスト方法を選択
  3. 03crateの統合テストを構成
  4. 04予測しにくい出力や重要な不変条件をテスト

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/redisearch/redisearch --skill rust-tests-guidelines

インストール後、Claude Code で/rust-tests-guidelinesを入力して読み込まれたか確認します。

詳細

Rust テスト作成のガイドライン

Rust コードの新しいテストを作成するためのガイドラインです。

ガイドライン

  1. テスト対象のコードの公開 API をテストします。
  2. 非公開 API をテストするのは、非公開コンポーネントが非常に複雑で、公開 API を通じたテストが難しい場合に限ります。
  3. 予測や比較が難しい出力をテストする場合は、insta を使用します。
  4. 適切な場合は、主要な不変条件に対するプロパティベーステストを追加するために proptest を使用します。
  5. テストコードも、本番コードと同じ注意を払って記述します。 不要な重複を避け、ヘルパーを導入して定型コードを減らし、読みやすさを確保します。 テストの意図は明確にし、難しい場合はその意図を明確に文書化します。
  6. コメントで正確な行番号を参照しないでください。行番号は時間の経過とともに変わる可能性があります。

コードの構成

  1. 非公開 API に依存しないテストは、該当するクレートの tests ディレクトリに配置します。
  2. tests ディレクトリはクレートとして構成し、main.rs ファイルを置き、すべてのテストをモジュールにまとめます。 例として trie_rs/tests ディレクトリを参照してください。
  3. テストで非公開 API に依存する必要がある場合は、#[cfg(test)] モジュールを使用して、テスト対象のコードと同じ場所に配置します。

extern C シンボルの扱い

Rust のテストにおける未定義の C シンボルの扱いについては、CONTRIBUTING.md を確認してください。

コメント