المهارات bats-testing-patterns
🧪

bats-testing-patterns

آمن

BATS を使った堅牢なシェルスクリプトテストの作成

متاح أيضًا من: wshobson

CI/CD パイプラインで保守性が高く信頼性の高いシェルスクリプトテストを作成するための包括的な BATS テストパターンを学びます。

يدعم: Claude Codex Code(CC)
🥉 75 برونزي
1

تنزيل ZIP المهارة

2

رفع في Claude

اذهب إلى Settings → Capabilities → Skills → Upload skill

3

فعّل وابدأ الاستخدام

اختبرها

استخدام "bats-testing-patterns". CSV ファイルを処理するスクリプトのテストを作成する

النتيجة المتوقعة:

  • ファイルの存在、内容の検証、不正な CSV のエラー処理、成功ケースをテストする BATS テストファイル

استخدام "bats-testing-patterns". 無効な入力に対してスクリプトが正しく失敗することをテストするには?

النتيجة المتوقعة:

  • 引数不足、無効なオプション、権限拒否シナリオ、エラーメッセージのアサートを示す @test ブロックの例

استخدام "bats-testing-patterns". 複数のコマンドを持つ CLI ツールのテストを設定する

النتيجة المتوقعة:

  • ヘルパー関数、フィクスチャ設定、teardown クリーンアップ、ヘルプ出力、バージョンフラグ、メインコマンド実行のテストを含むテスト構造

التدقيق الأمني

آمن
v1 • 2/25/2026

This skill provides documentation and examples for writing BATS tests. All 91 static findings are false positives: external commands are code examples in markdown, network URLs are documentation links, filesystem patterns are legitimate test setup patterns, and weak crypto detection is a false positive due to 'Bats' being misidentified as a cryptographic reference.

2
الملفات التي تم فحصها
652
الأسطر التي تم تحليلها
0
النتائج
1
إجمالي عمليات التدقيق
لا توجد مشكلات أمنية
تم تدقيقه بواسطة: claude

درجة الجودة

38
الهندسة المعمارية
100
قابلية الصيانة
87
المحتوى
50
المجتمع
100
الأمان
100
الامتثال للمواصفات

ماذا يمكنك بناءه

インフラストラクチャスクリプトをテストする DevOps エンジニア

デプロイスクリプト、構成管理スクリプト、インフラストラクチャ自動化のための自動テストを作成し、信頼性を確保します。

シェルユーティリティにテストを追加する開発者

CLI ツールとシェルユーティリティにテスト駆動開発を実装し、回帰を早期に検出します。

シェルスクリプト品質基準を確立するチーム

チーム全体で包括的なテストパターンとベストプラクティスを確立し、一貫したコード品質を維持します。

جرّب هذه الموجهات

基本テスト作成
script.sh のメイン関数の終了コードと出力をテストする BATS テストファイルを作成してください。
フィクスチャを使用したテスト
tests/fixtures/ ディレクトリからフィクスチャファイルを使用して、ファイル処理関数をテストする BATS テストを作成してください。
外部コマンドのモック
実際のネットワークリクエストを行わずに API 関数をテストするため、BATS で 'curl' コマンドをスタブする方法を示してください。
CI/CD 統合
TAP 出力で CI/CD において BATS テストを実行するための GitHub Actions ワークフローと Makefile を作成してください。

أفضل الممارسات

  • テスト対象と期待される動作を明確に示す記述的なテスト名を使用する
  • teardown 関数で一時的なファイルとリソースを常にクリーンアップし、テスト汚染を防止する
  • API 呼び出しやファイルシステム操作などの外部依存関係をモック化して単体テストを分離する

تجنب

  • 単一のテスト関数で複数の無関係なアサートをテストすると、単一責任原則に違反する
  • teardown やクリーンアップを省略すると、不安定なテストやリソースリークの原因となる
  • 観測可能な動作ではなく実装詳細をテストすると、テストが脆くなる

الأسئلة المتكررة

BATS とは何ですか?
BATS(Bash Automated Testing System)は、TAP 準拠の出力とシンプルなテスト構文を提供するシェルスクリプト向けテストフレームワークです。
BATS をインストールするには?
Homebrew(brew install bats-core)、npm(npm install --global bats)、または GitHub からクローンしてインストールスクリプトを実行することでインストールできます。
setup と setup_file の違いは何ですか?
setup() は各テストの前に実行され、setup_file() はファイル内の全テストの前に 1 回だけ実行されます。setup_file はコストの高い共有リソースに使用します。
コマンドが失敗することをテストするには?
'run' を使用してコマンドを実行し、$status がゼロでないことをアサートし、必要に応じてエラー出力を確認します。
外部コマンドを使用するスクリプトをテストできますか?
はい、'export -f' を使用した関数モックまたは一時的な PATH ディレクトリにモック実行ファイルを作成してコマンドスタブを使用できます。
テストを並列実行するには?
--parallel フラグを bats と共に使用します。例:bats tests/*.bats --parallel 4

تفاصيل المطور

بنية الملفات