test-design-techniques について
入力の種類に応じて、境界値分析、同値分割、デシジョンテーブル、状態遷移、ペアワイズテストなどを選ぶテスト設計スキルです。新規テストスイートの作成や既存テストの見直しに使えます。
主な機能
- 01入力の種類に応じて技法を選択
- 02数値境界と同値クラスを網羅
- 03複数条件にデシジョンテーブルを適用
- 04ワークフローの状態遷移テストを設計
- 05ペアワイズテストで組み合わせを削減
- 06エージェントでテストを生成・分析
活用シーン
- 01新しいテストスイートの設計
- 02既存テストの冗長性削減
- 03複雑なビジネスルールへの対応
- 04テストカバレッジの分析
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ proffesor-for-testing/ agentic-qe --skill test-design-techniquesインストール後、Claude Code で/test-design-techniquesを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
evals/test-design-techniques.yamlschemas/output.jsonscripts/validate-config.json詳細
テスト設計技法
<default_to_action> テストケースを設計する際は、入力の種類に応じて技法を選択します。
- 数値範囲 → BVA + EP
- 複数の条件 → デシジョンテーブル
- ワークフロー → 状態遷移
- 多数のパラメーターの組み合わせ → ペアワイズテスト </default_to_action>
クイックリファレンスカード
使用する場面
- 新しいテストスイートの設計
- 既存のテストの最適化
- 複雑なビジネスルール
- テストの冗長性の削減
エージェント主導のテスト設計
// Auto-generate BVA tests
await Task("Generate BVA Tests", {
field: 'age',
dataType: 'integer',
constraints: { min: 18, max: 120 }
}, "qe-test-generator");
// Returns: 6 boundary test cases
// Auto-generate pairwise tests
await Task("Generate Pairwise Tests", {
parameters: {
browser: ['Chrome', 'Firefox', 'Safari'],
os: ['Windows', 'Mac', 'Linux'],
screen: ['Desktop', 'Tablet', 'Mobile']
}
}, "qe-test-generator");
// Returns: 9-12 tests (vs 27 full combination)
エージェント連携のヒント
メモリ名前空間
aqe/test-design/
├── bva-analysis/* - Boundary value tests
├── partitions/* - Equivalence partitions
├── decision-tables/* - Decision table tests
└── pairwise/* - Combinatorial reduction
フリート連携
const designFleet = await FleetManager.coordinate({
strategy: 'systematic-test-design',
agents: [
'qe-test-generator', // Apply design techniques
'qe-coverage-analyzer', // Analyze coverage
'qe-quality-analyzer' // Assess test quality
],
topology: 'sequential'
});
関連スキル
- agentic-quality-engineering - エージェント主導のテスト
- risk-based-testing - リスクに基づく優先順位付け
- mutation-testing - テストの有効性の検証
覚えておくこと
エージェントを使用する場合: qe-test-generator がこれらの技法を自動的に適用し、網羅性を最大化し、冗長性を最小限に抑えた最適なテストスイートを生成します。エージェントはコード分析から境界値、同値クラス、組み合わせを特定します。
コメント
Markdown 対応