@sk8metal/michi-cli 0.10.1 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +77 -847
- package/dist/scripts/phase-runner.js +1 -1
- package/dist/scripts/phase-runner.js.map +1 -1
- package/dist/scripts/utils/multi-repo-validator.d.ts +18 -0
- package/dist/scripts/utils/multi-repo-validator.d.ts.map +1 -1
- package/dist/scripts/utils/multi-repo-validator.js +42 -0
- package/dist/scripts/utils/multi-repo-validator.js.map +1 -1
- package/dist/scripts/utils/tasks-format-validator.js +3 -3
- package/dist/scripts/utils/tasks-format-validator.js.map +1 -1
- package/docs/README.md +20 -83
- package/docs/getting-started/configuration.md +379 -0
- package/docs/getting-started/installation.md +59 -0
- package/docs/getting-started/quick-start.md +76 -0
- package/docs/guides/ai-tools.md +311 -0
- package/docs/guides/atlassian-integration.md +116 -0
- package/docs/guides/claude-code.md +155 -0
- package/docs/guides/multi-repo.md +117 -0
- package/docs/guides/workflow.md +382 -0
- package/docs/reference/ai-commands.md +92 -0
- package/docs/reference/cli.md +756 -0
- package/docs/reference/environment-variables.md +192 -0
- package/docs/troubleshooting.md +543 -0
- package/package.json +1 -1
- package/scripts/phase-runner.ts +1 -1
- package/scripts/utils/__tests__/multi-repo-validator.test.ts +159 -1
- package/scripts/utils/multi-repo-validator.ts +50 -0
- package/scripts/utils/tasks-format-validator.ts +3 -3
- package/templates/claude/agents/e2e-first-planner/AGENT.md +1 -1
- package/templates/claude/agents/pr-resolver/AGENT.md +15 -3
- package/templates/claude/commands/michi/e2e-plan.md +1 -1
- package/templates/claude/commands/michi/spec-design.md +2 -2
- package/templates/claude/commands/michi/spec-tasks.md +156 -0
- package/templates/claude/commands/michi/test-planning.md +1 -1
- package/templates/claude/commands/michi/validate-design.md +3 -3
- package/templates/claude/commands/michi-multi-repo/impl-all.md +30 -1
- package/templates/claude/commands/michi-multi-repo/propagate-specs.md +14 -1
- package/templates/claude/commands/michi-multi-repo/spec-review.md +16 -2
- package/templates/claude-agent/agents/repo-spec-executor.md +1 -1
- package/templates/claude-agent/commands/michi/spec-tasks.md +117 -0
- package/templates/claude-agent/rules/code-size-monitor.md +26 -0
- package/templates/claude-agent/rules/code-size-rules.md +32 -0
- package/templates/codex/AGENTS.override.md +1 -1
- package/templates/codex/rules/README.md +2 -2
- package/templates/cursor/commands/michi/spec-tasks.md +117 -0
- package/templates/michi/cc-sdd-overrides/settings/rules/design-review-michi.md +1 -1
- package/docs/context.md +0 -59
- package/docs/michi-development/contributing/development.md +0 -341
- package/docs/michi-development/contributing/release.md +0 -365
- package/docs/michi-development/design/config-unification.md +0 -733
- package/docs/michi-development/design/design-config-current-state.md +0 -330
- package/docs/michi-development/design/design-config-implementation.md +0 -628
- package/docs/michi-development/design/design-config-migration.md +0 -952
- package/docs/michi-development/design/design-config-security.md +0 -771
- package/docs/michi-development/design/design-config-solution.md +0 -583
- package/docs/michi-development/design/design-config-testing.md +0 -892
- package/docs/michi-development/testing/manual-verification-flow.md +0 -871
- package/docs/michi-development/testing/manual-verification-other-tools.md +0 -1279
- package/docs/michi-development/testing/manual-verification-troubleshooting.md +0 -122
- package/docs/michi-development/testing/pre-publish-checklist.md +0 -560
- package/docs/michi-development/testing-strategy.md +0 -87
- package/docs/plan.md +0 -275
- package/docs/user-guide/getting-started/github-token-setup.md +0 -510
- package/docs/user-guide/getting-started/new-repository-setup.md +0 -704
- package/docs/user-guide/getting-started/quick-start.md +0 -212
- package/docs/user-guide/getting-started/setup.md +0 -819
- package/docs/user-guide/guides/agent-skills-integration.md +0 -222
- package/docs/user-guide/guides/customization.md +0 -537
- package/docs/user-guide/guides/internationalization.md +0 -540
- package/docs/user-guide/guides/migration-guide.md +0 -138
- package/docs/user-guide/guides/multi-project.md +0 -368
- package/docs/user-guide/guides/multi-repo-guide.md +0 -1590
- package/docs/user-guide/guides/phase-automation.md +0 -419
- package/docs/user-guide/guides/workflow.md +0 -574
- package/docs/user-guide/hands-on/README.md +0 -142
- package/docs/user-guide/hands-on/claude-agent-setup.md +0 -597
- package/docs/user-guide/hands-on/claude-setup.md +0 -452
- package/docs/user-guide/hands-on/cursor-setup.md +0 -353
- package/docs/user-guide/hands-on/troubleshooting.md +0 -964
- package/docs/user-guide/hands-on/verification-checklist.md +0 -439
- package/docs/user-guide/hands-on/workflow-walkthrough.md +0 -1078
- package/docs/user-guide/reference/config.md +0 -589
- package/docs/user-guide/reference/multi-repo-api.md +0 -771
- package/docs/user-guide/reference/quick-reference.md +0 -297
- package/docs/user-guide/reference/security-test-payloads.md +0 -50
- package/docs/user-guide/reference/tasks-template.md +0 -550
- package/docs/user-guide/release/ci-setup-java.md +0 -114
- package/docs/user-guide/release/ci-setup-nodejs.md +0 -94
- package/docs/user-guide/release/ci-setup-php.md +0 -102
- package/docs/user-guide/release/ci-setup-troubleshooting.md +0 -94
- package/docs/user-guide/release/ci-setup.md +0 -188
- package/docs/user-guide/release/release-flow.md +0 -476
- package/docs/user-guide/templates/test-specs/README.md +0 -173
- package/docs/user-guide/templates/test-specs/e2e-test-spec-template.md +0 -553
- package/docs/user-guide/templates/test-specs/integration-test-spec-template.md +0 -435
- package/docs/user-guide/templates/test-specs/performance-test-spec-template.md +0 -454
- package/docs/user-guide/templates/test-specs/security-test-spec-template.md +0 -625
- package/docs/user-guide/templates/test-specs/unit-test-spec-template.md +0 -328
- package/docs/user-guide/testing/integration-tests.md +0 -312
- package/docs/user-guide/testing/tdd-cycle.md +0 -349
- package/docs/user-guide/testing/test-execution-flow.md +0 -396
- package/docs/user-guide/testing/test-failure-handling.md +0 -521
- package/docs/user-guide/testing/test-planning-flow.md +0 -185
- package/docs/user-guide/testing-strategy.md +0 -185
- package/docs/verification-guide.md +0 -518
|
@@ -1,871 +0,0 @@
|
|
|
1
|
-
# Michi 手動検証フロー
|
|
2
|
-
|
|
3
|
-
NPMパッケージpublish前の完全な手動検証フローガイド
|
|
4
|
-
|
|
5
|
-
## 目次
|
|
6
|
-
|
|
7
|
-
- [概要](#概要)
|
|
8
|
-
- [ツールサポート状況](#ツールサポート状況)
|
|
9
|
-
- [前提条件](#前提条件)
|
|
10
|
-
- [Part 1: 実ユーザーワークフロー](#part-1-実ユーザーワークフロー)
|
|
11
|
-
- [1.1 Cursor IDE](#11-cursor-ide)
|
|
12
|
-
- [1.2 Claude Code](#12-claude-code)
|
|
13
|
-
- [1.3 Claude Agent SDK](#13-claude-agent-sdk)
|
|
14
|
-
- [1.4 Cline](#14-cline)
|
|
15
|
-
- [1.5 Gemini](#15-gemini)
|
|
16
|
-
- [1.6 Codex](#16-codex)
|
|
17
|
-
- [Part 2: 自動テストワークフロー](#part-2-自動テストワークフロー)
|
|
18
|
-
- [トラブルシューティング](#トラブルシューティング)
|
|
19
|
-
|
|
20
|
-
---
|
|
21
|
-
|
|
22
|
-
## 概要
|
|
23
|
-
|
|
24
|
-
このドキュメントは、Michiパッケージのpublish前に実施する手動検証の完全なフローを記載しています。
|
|
25
|
-
|
|
26
|
-
### 検証の目的
|
|
27
|
-
|
|
28
|
-
1. **実環境での動作確認**: NPMパッケージとしてインストールした状態での動作を確認
|
|
29
|
-
2. **全ツール対応確認**: 6つのAI開発ツールすべてでセットアップと基本機能が動作することを確認
|
|
30
|
-
3. **2段階セットアップの検証**: cc-sdd → Michi の順序でのセットアップが正しく動作することを確認
|
|
31
|
-
|
|
32
|
-
### 2つのコマンド実行パターン
|
|
33
|
-
|
|
34
|
-
このガイドでは、各ツールに対して2つのコマンド実行パターンを提供します:
|
|
35
|
-
|
|
36
|
-
- **Pattern A (NPM Package)**: NPMパッケージとしてインストールした状態での実行
|
|
37
|
-
- 実ユーザーの使用方法に最も近い
|
|
38
|
-
- `npx @sk8metal/michi-cli <command>` を使用
|
|
39
|
-
|
|
40
|
-
- **Pattern B (Development)**: 開発環境から直接実行
|
|
41
|
-
- 開発者が開発中のコードをテストする場合に使用
|
|
42
|
-
- `npx tsx ~/Work/git/michi/src/cli.ts <command>` を使用
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## ツールサポート状況
|
|
47
|
-
|
|
48
|
-
| AI開発ツール | cc-sdd対応 | Michi対応 | 検証状況 |
|
|
49
|
-
| -------------------- | ----------- | ----------------- | --------------- |
|
|
50
|
-
| **Cursor IDE** | ✅ 完全対応 | ✅ 完全対応 | ✅ 動作確認済み |
|
|
51
|
-
| **Claude Code** | ✅ 完全対応 | ✅ 完全対応 | ✅ 動作確認済み |
|
|
52
|
-
| **Claude Agent SDK** | ⚠️ 暫定対応 | ⚠️ 暫定対応 | ⚠️ 要検証 |
|
|
53
|
-
| **Cline** | ❓ 未確認 | ✅ テンプレート有 | ❓ 要検証 |
|
|
54
|
-
| **Gemini** | 🚧 準備中 | 🚧 準備中 | 🚧 未対応 |
|
|
55
|
-
| **Codex** | 🚧 準備中 | 🚧 準備中 | 🚧 未対応 |
|
|
56
|
-
|
|
57
|
-
### サポート状況の詳細
|
|
58
|
-
|
|
59
|
-
- ✅ **完全対応**: すべての機能が動作確認済み
|
|
60
|
-
- ⚠️ **暫定対応**: 基本機能は動作するが、一部制限あり
|
|
61
|
-
- ❓ **未確認**: テンプレートは存在するが動作未検証
|
|
62
|
-
- 🚧 **準備中**: 現在開発中
|
|
63
|
-
|
|
64
|
-
---
|
|
65
|
-
|
|
66
|
-
## 前提条件
|
|
67
|
-
|
|
68
|
-
### システム要件
|
|
69
|
-
|
|
70
|
-
- Node.js >= 20.0.0
|
|
71
|
-
- npm >= 10.0.0
|
|
72
|
-
- Git
|
|
73
|
-
- 各AI開発ツールのインストール(検証対象のツール)
|
|
74
|
-
|
|
75
|
-
### 事前準備
|
|
76
|
-
|
|
77
|
-
1. **Michiプロジェクトのビルド**(Pattern B使用時のみ)
|
|
78
|
-
|
|
79
|
-
```bash
|
|
80
|
-
cd ~/Work/git/michi
|
|
81
|
-
npm run build
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
2. **NPMパッケージの作成**(Pattern A使用時のみ)
|
|
85
|
-
```bash
|
|
86
|
-
cd ~/Work/git/michi
|
|
87
|
-
npm pack
|
|
88
|
-
# 出力: sk8metal-michi-cli-X.X.X.tgz
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
|
-
## Part 1: 実ユーザーワークフロー
|
|
94
|
-
|
|
95
|
-
このセクションでは、各AI開発ツールごとに、実際のユーザーが行うセットアップから基本機能の確認までの完全なフローを記載します。
|
|
96
|
-
|
|
97
|
-
### 重要な原則
|
|
98
|
-
|
|
99
|
-
1. **2段階セットアップが必須**
|
|
100
|
-
- Phase 1: cc-sddのインストール(AIコマンド `/kiro:spec-*` を提供)
|
|
101
|
-
- Phase 2: Michiのセットアップ(CLIコマンドとチャットコマンド `/michi:*` を提供)
|
|
102
|
-
|
|
103
|
-
2. **絶対パスの使用**
|
|
104
|
-
- すべてのコマンドは絶対パスで記載
|
|
105
|
-
- テストディレクトリ `/tmp/michi-manual-test-<tool>` からでも実行可能
|
|
106
|
-
|
|
107
|
-
3. **feature名の統一**
|
|
108
|
-
- すべての検証で `java-calculator-webapp` を使用
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
## 1.1 Cursor IDE
|
|
113
|
-
|
|
114
|
-
### サポート状況
|
|
115
|
-
|
|
116
|
-
- ✅ cc-sdd: 完全対応
|
|
117
|
-
- ✅ Michi: 完全対応
|
|
118
|
-
|
|
119
|
-
### Step 0: テストディレクトリの準備
|
|
120
|
-
|
|
121
|
-
```bash
|
|
122
|
-
# テストディレクトリを作成
|
|
123
|
-
mkdir -p /tmp/michi-manual-test-cursor
|
|
124
|
-
cd /tmp/michi-manual-test-cursor
|
|
125
|
-
|
|
126
|
-
# Gitリポジトリとして初期化
|
|
127
|
-
git init
|
|
128
|
-
git config user.name "Test User"
|
|
129
|
-
git config user.email "test@example.com"
|
|
130
|
-
|
|
131
|
-
# 初期コミット
|
|
132
|
-
touch README.md
|
|
133
|
-
git add README.md
|
|
134
|
-
git commit -m "Initial commit"
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
### Step 1: Phase 1 - cc-sddのインストール
|
|
138
|
-
|
|
139
|
-
#### Pattern A: NPM Package(推奨)
|
|
140
|
-
|
|
141
|
-
```bash
|
|
142
|
-
cd /tmp/michi-manual-test-cursor
|
|
143
|
-
|
|
144
|
-
# cc-sddをインストール(Cursor IDE用、日本語)
|
|
145
|
-
npx cc-sdd@latest --cursor --lang ja
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
#### Pattern B: Development(開発環境)
|
|
149
|
-
|
|
150
|
-
cc-sddは外部パッケージのため、Pattern Bは適用外です。常にNPMから最新版をインストールしてください。
|
|
151
|
-
|
|
152
|
-
#### 確認事項
|
|
153
|
-
|
|
154
|
-
実行後、以下のファイルが生成されることを確認:
|
|
155
|
-
|
|
156
|
-
```bash
|
|
157
|
-
ls -la /tmp/michi-manual-test-cursor/.cursor/
|
|
158
|
-
# 出力例:
|
|
159
|
-
# .cursor/
|
|
160
|
-
# .cursorrules
|
|
161
|
-
# commands/
|
|
162
|
-
# kiro-spec-init.md
|
|
163
|
-
# kiro-spec-requirements.md
|
|
164
|
-
# kiro-spec-design.md
|
|
165
|
-
# ... (cc-sdd提供の10個のコマンド)
|
|
166
|
-
```
|
|
167
|
-
|
|
168
|
-
### Step 2: Phase 2 - Michiのセットアップ
|
|
169
|
-
|
|
170
|
-
#### Pattern A: NPM Package(推奨)
|
|
171
|
-
|
|
172
|
-
```bash
|
|
173
|
-
cd /tmp/michi-manual-test-cursor
|
|
174
|
-
|
|
175
|
-
# Michiパッケージをグローバルインストール
|
|
176
|
-
npm install -g @sk8metal/michi-cli
|
|
177
|
-
|
|
178
|
-
# Michiセットアップ(Cursor IDE用)
|
|
179
|
-
michi setup-existing --cursor --lang ja
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
#### Pattern B: Development(開発環境)
|
|
183
|
-
|
|
184
|
-
```bash
|
|
185
|
-
cd /tmp/michi-manual-test-cursor
|
|
186
|
-
|
|
187
|
-
# 開発環境のMichiを使用してセットアップ
|
|
188
|
-
npx tsx ~/Work/git/michi/src/cli.ts setup-existing --cursor --lang ja
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
#### 確認事項
|
|
192
|
-
|
|
193
|
-
実行後、以下のファイルが追加されることを確認:
|
|
194
|
-
|
|
195
|
-
```bash
|
|
196
|
-
ls -la /tmp/michi-manual-test-cursor/.cursor/commands/
|
|
197
|
-
# cc-sddのコマンドに加えて、Michiのコマンドが追加されている:
|
|
198
|
-
# michi-confluence-sync.md
|
|
199
|
-
# michi-project-switch.md
|
|
200
|
-
```
|
|
201
|
-
|
|
202
|
-
### Step 3: フェーズ実行
|
|
203
|
-
|
|
204
|
-
各フェーズごとに、AIコマンド(該当する場合)とCLIコマンドを順番に実行します。
|
|
205
|
-
|
|
206
|
-
#### 3.0 初期化
|
|
207
|
-
|
|
208
|
-
Cursor IDEを開き、AIコマンドを実行:
|
|
209
|
-
|
|
210
|
-
```
|
|
211
|
-
/kiro:spec-init マニュアルテスト機能
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
**期待される動作:**
|
|
215
|
-
|
|
216
|
-
- `.kiro/specs/java-calculator-webapp/` ディレクトリが作成される
|
|
217
|
-
- `spec.json` が初期化される
|
|
218
|
-
|
|
219
|
-
#### 3.1 Phase 0.1: 要件定義(必須)
|
|
220
|
-
|
|
221
|
-
**AIコマンド:**
|
|
222
|
-
|
|
223
|
-
```
|
|
224
|
-
/kiro:spec-requirements java-calculator-webapp
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
**期待される動作:**
|
|
228
|
-
|
|
229
|
-
- `requirements.md` が生成される
|
|
230
|
-
- AIが要件を整理して記載
|
|
231
|
-
|
|
232
|
-
**CLIコマンド - Pattern A (NPM Package):**
|
|
233
|
-
|
|
234
|
-
```bash
|
|
235
|
-
cd /tmp/michi-manual-test-cursor
|
|
236
|
-
michi phase:run java-calculator-webapp requirements
|
|
237
|
-
```
|
|
238
|
-
|
|
239
|
-
**CLIコマンド - Pattern B (Development):**
|
|
240
|
-
|
|
241
|
-
```bash
|
|
242
|
-
cd /tmp/michi-manual-test-cursor
|
|
243
|
-
npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp requirements
|
|
244
|
-
```
|
|
245
|
-
|
|
246
|
-
**期待される結果:**
|
|
247
|
-
|
|
248
|
-
- Confluenceページが作成される
|
|
249
|
-
- バリデーションが成功する
|
|
250
|
-
|
|
251
|
-
#### 3.2 Phase 0.2: 設計(必須)
|
|
252
|
-
|
|
253
|
-
**AIコマンド:**
|
|
254
|
-
|
|
255
|
-
```
|
|
256
|
-
/kiro:spec-design java-calculator-webapp
|
|
257
|
-
```
|
|
258
|
-
|
|
259
|
-
**期待される動作:**
|
|
260
|
-
|
|
261
|
-
- `design.md` が生成される
|
|
262
|
-
- AIが設計内容を記載
|
|
263
|
-
|
|
264
|
-
**CLIコマンド - Pattern A (NPM Package):**
|
|
265
|
-
|
|
266
|
-
```bash
|
|
267
|
-
cd /tmp/michi-manual-test-cursor
|
|
268
|
-
michi phase:run java-calculator-webapp design
|
|
269
|
-
```
|
|
270
|
-
|
|
271
|
-
**CLIコマンド - Pattern B (Development):**
|
|
272
|
-
|
|
273
|
-
```bash
|
|
274
|
-
cd /tmp/michi-manual-test-cursor
|
|
275
|
-
npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp design
|
|
276
|
-
```
|
|
277
|
-
|
|
278
|
-
**期待される結果:**
|
|
279
|
-
|
|
280
|
-
- Confluenceページが作成される
|
|
281
|
-
- バリデーションが成功する
|
|
282
|
-
|
|
283
|
-
#### 3.3 Phase 0.3: テストタイプ選択(任意)
|
|
284
|
-
|
|
285
|
-
**AIコマンド:** なし(このフェーズにはAIコマンドは不要)
|
|
286
|
-
|
|
287
|
-
**CLIコマンド - Pattern A (NPM Package):**
|
|
288
|
-
|
|
289
|
-
```bash
|
|
290
|
-
cd /tmp/michi-manual-test-cursor
|
|
291
|
-
michi phase:run java-calculator-webapp test-type-selection
|
|
292
|
-
```
|
|
293
|
-
|
|
294
|
-
**CLIコマンド - Pattern B (Development):**
|
|
295
|
-
|
|
296
|
-
```bash
|
|
297
|
-
cd /tmp/michi-manual-test-cursor
|
|
298
|
-
npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-type-selection
|
|
299
|
-
```
|
|
300
|
-
|
|
301
|
-
**期待される結果:**
|
|
302
|
-
|
|
303
|
-
- テストタイプの選択が完了する
|
|
304
|
-
- バリデーションが成功する
|
|
305
|
-
|
|
306
|
-
#### 3.4 Phase 0.4: テスト仕様書作成(任意)
|
|
307
|
-
|
|
308
|
-
**AIコマンド:** なし(このフェーズにはAIコマンドは不要)
|
|
309
|
-
|
|
310
|
-
**CLIコマンド - Pattern A (NPM Package):**
|
|
311
|
-
|
|
312
|
-
```bash
|
|
313
|
-
cd /tmp/michi-manual-test-cursor
|
|
314
|
-
michi phase:run java-calculator-webapp test-spec
|
|
315
|
-
```
|
|
316
|
-
|
|
317
|
-
**CLIコマンド - Pattern B (Development):**
|
|
318
|
-
|
|
319
|
-
```bash
|
|
320
|
-
cd /tmp/michi-manual-test-cursor
|
|
321
|
-
npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-spec
|
|
322
|
-
```
|
|
323
|
-
|
|
324
|
-
**期待される結果:**
|
|
325
|
-
|
|
326
|
-
- テスト仕様書が作成される
|
|
327
|
-
- バリデーションが成功する
|
|
328
|
-
|
|
329
|
-
#### 3.5 Phase 0.5-0.6: タスク分割・JIRA同期(必須)
|
|
330
|
-
|
|
331
|
-
**AIコマンド:**
|
|
332
|
-
|
|
333
|
-
```
|
|
334
|
-
/kiro:spec-tasks java-calculator-webapp
|
|
335
|
-
```
|
|
336
|
-
|
|
337
|
-
**期待される動作:**
|
|
338
|
-
|
|
339
|
-
- `tasks.md` が生成される
|
|
340
|
-
- ストーリー、タスク、工数が記載される
|
|
341
|
-
|
|
342
|
-
**CLIコマンド - Pattern A (NPM Package):**
|
|
343
|
-
|
|
344
|
-
```bash
|
|
345
|
-
cd /tmp/michi-manual-test-cursor
|
|
346
|
-
michi phase:run java-calculator-webapp tasks
|
|
347
|
-
```
|
|
348
|
-
|
|
349
|
-
**CLIコマンド - Pattern B (Development):**
|
|
350
|
-
|
|
351
|
-
```bash
|
|
352
|
-
cd /tmp/michi-manual-test-cursor
|
|
353
|
-
npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp tasks
|
|
354
|
-
```
|
|
355
|
-
|
|
356
|
-
**期待される結果:**
|
|
357
|
-
|
|
358
|
-
- JIRAチケットが作成される
|
|
359
|
-
- バリデーションが成功する
|
|
360
|
-
|
|
361
|
-
#### 3.6 Phase 1: 環境構築(任意)
|
|
362
|
-
|
|
363
|
-
**AIコマンド:** なし(このフェーズにはAIコマンドは不要)
|
|
364
|
-
|
|
365
|
-
**CLIコマンド - Pattern A (NPM Package):**
|
|
366
|
-
|
|
367
|
-
```bash
|
|
368
|
-
cd /tmp/michi-manual-test-cursor
|
|
369
|
-
michi phase:run java-calculator-webapp environment-setup
|
|
370
|
-
```
|
|
371
|
-
|
|
372
|
-
**CLIコマンド - Pattern B (Development):**
|
|
373
|
-
|
|
374
|
-
```bash
|
|
375
|
-
cd /tmp/michi-manual-test-cursor
|
|
376
|
-
npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp environment-setup
|
|
377
|
-
```
|
|
378
|
-
|
|
379
|
-
**期待される結果:**
|
|
380
|
-
|
|
381
|
-
- 環境構築プロセスが完了する
|
|
382
|
-
- バリデーションが成功する
|
|
383
|
-
|
|
384
|
-
#### 3.7 Phase 2: TDD実装(必須)
|
|
385
|
-
|
|
386
|
-
**AIコマンド:**
|
|
387
|
-
|
|
388
|
-
```
|
|
389
|
-
/kiro:spec-impl java-calculator-webapp
|
|
390
|
-
```
|
|
391
|
-
|
|
392
|
-
**期待される動作:**
|
|
393
|
-
|
|
394
|
-
- TDD(RED-GREEN-REFACTOR)サイクルで実装
|
|
395
|
-
- 各タスクの実装とテストが完了
|
|
396
|
-
|
|
397
|
-
**注意:** 実際の実装は行わず、コマンドの動作確認のみ
|
|
398
|
-
|
|
399
|
-
**JIRA連携について:**
|
|
400
|
-
JIRA連携は `/kiro:spec-impl` コマンド実行時に自動で行われます:
|
|
401
|
-
|
|
402
|
-
- spec.json から JIRA 情報(Epic + Story)を自動取得
|
|
403
|
-
- Epic と最初の Story を「進行中」に移動
|
|
404
|
-
- TDD 実装
|
|
405
|
-
- PR 作成
|
|
406
|
-
- Epic と最初の Story を「レビュー待ち」に移動
|
|
407
|
-
- JIRA に PR リンクをコメント
|
|
408
|
-
|
|
409
|
-
**CLIコマンド - 個別JIRA操作(任意)- Pattern A (NPM Package):**
|
|
410
|
-
|
|
411
|
-
```bash
|
|
412
|
-
cd /tmp/michi-manual-test-cursor
|
|
413
|
-
# ステータス変更
|
|
414
|
-
michi jira:transition DEMO-103 "In Progress"
|
|
415
|
-
|
|
416
|
-
# コメント追加
|
|
417
|
-
michi jira:comment DEMO-103 "テストコメント"
|
|
418
|
-
```
|
|
419
|
-
|
|
420
|
-
**CLIコマンド - 個別JIRA操作(任意)- Pattern B (Development):**
|
|
421
|
-
|
|
422
|
-
```bash
|
|
423
|
-
cd /tmp/michi-manual-test-cursor
|
|
424
|
-
# ステータス変更
|
|
425
|
-
npx tsx ~/Work/git/michi/src/cli.ts jira:transition DEMO-103 "In Progress"
|
|
426
|
-
|
|
427
|
-
# コメント追加
|
|
428
|
-
npx tsx ~/Work/git/michi/src/cli.ts jira:comment DEMO-103 "テストコメント"
|
|
429
|
-
```
|
|
430
|
-
|
|
431
|
-
**期待される結果:**
|
|
432
|
-
|
|
433
|
-
- JIRAステータスが変更される
|
|
434
|
-
- JIRAにコメントが追加される
|
|
435
|
-
|
|
436
|
-
#### 3.8 Phase A: PR前自動テスト(任意)
|
|
437
|
-
|
|
438
|
-
**AIコマンド:** なし(このフェーズにはAIコマンドは不要)
|
|
439
|
-
|
|
440
|
-
**CLIコマンド - Pattern A (NPM Package):**
|
|
441
|
-
|
|
442
|
-
```bash
|
|
443
|
-
cd /tmp/michi-manual-test-cursor
|
|
444
|
-
michi phase:run java-calculator-webapp phase-a
|
|
445
|
-
```
|
|
446
|
-
|
|
447
|
-
**CLIコマンド - Pattern B (Development):**
|
|
448
|
-
|
|
449
|
-
```bash
|
|
450
|
-
cd /tmp/michi-manual-test-cursor
|
|
451
|
-
npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-a
|
|
452
|
-
```
|
|
453
|
-
|
|
454
|
-
**期待される結果:**
|
|
455
|
-
|
|
456
|
-
- PR前自動テストが実行される
|
|
457
|
-
- バリデーションが成功する
|
|
458
|
-
|
|
459
|
-
#### 3.10 Phase B: リリース準備テスト(任意)
|
|
460
|
-
|
|
461
|
-
**AIコマンド:** なし(このフェーズにはAIコマンドは不要)
|
|
462
|
-
|
|
463
|
-
**前提条件:**
|
|
464
|
-
|
|
465
|
-
- Phase 0.3 (test-type-selection) でテストタイプが選択済みであること
|
|
466
|
-
- アプリケーションの実装が完了していること
|
|
467
|
-
|
|
468
|
-
**CLIコマンド - Pattern A (NPM Package):**
|
|
469
|
-
|
|
470
|
-
```bash
|
|
471
|
-
cd /tmp/michi-manual-test-cursor
|
|
472
|
-
michi phase:run java-calculator-webapp phase-b
|
|
473
|
-
```
|
|
474
|
-
|
|
475
|
-
**CLIコマンド - Pattern B (Development):**
|
|
476
|
-
|
|
477
|
-
```bash
|
|
478
|
-
cd /tmp/michi-manual-test-cursor
|
|
479
|
-
npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-b
|
|
480
|
-
```
|
|
481
|
-
|
|
482
|
-
**期待される結果:**
|
|
483
|
-
|
|
484
|
-
- `test-type-selection.json`から選択されたテストタイプを読み込む
|
|
485
|
-
- Phase Bに該当するテスト(performance, security, integration, e2e)の実行ファイルを生成
|
|
486
|
-
- `.kiro/specs/<feature>/test-execution/` 配下にテスト実行ファイルが作成される
|
|
487
|
-
|
|
488
|
-
**生成されるファイル例:**
|
|
489
|
-
|
|
490
|
-
| テストタイプ | 生成ファイル |
|
|
491
|
-
| ------------ | ------------------------------------------------------------------------------------- |
|
|
492
|
-
| performance | `test-execution/performance/locustfile.py`, `load-test-plan.md` |
|
|
493
|
-
| security | `test-execution/security/zap-config.yaml`, `run-zap-scan.sh`, `security-test-plan.md` |
|
|
494
|
-
| integration | `test-execution/integration/integration-checklist.md` |
|
|
495
|
-
| e2e | `test-execution/e2e/e2e-checklist.md` |
|
|
496
|
-
|
|
497
|
-
**注意:** 生成されるファイルはテンプレートとガイドです。実際のテストツール(Locust, k6, OWASP ZAP等)の選定と設定は、プロジェクトの要件に応じて行ってください。
|
|
498
|
-
|
|
499
|
-
#### 3.11 Phase 4: リリース準備(任意)
|
|
500
|
-
|
|
501
|
-
**注意:** 手動検証では実際のリリース準備は行わず、フローの確認のみ
|
|
502
|
-
|
|
503
|
-
#### 3.12 Phase 5: リリース(任意)
|
|
504
|
-
|
|
505
|
-
**注意:** 手動検証では実際のリリースは行わず、フローの確認のみ
|
|
506
|
-
|
|
507
|
-
### Step 4: 成功確認
|
|
508
|
-
|
|
509
|
-
すべてのコマンドが正常に完了し、以下のファイル構造が作成されていることを確認:
|
|
510
|
-
|
|
511
|
-
```
|
|
512
|
-
/tmp/michi-manual-test-cursor/
|
|
513
|
-
├── .cursor/
|
|
514
|
-
│ ├── .cursorrules
|
|
515
|
-
│ └── commands/
|
|
516
|
-
│ ├── kiro-spec-init.md (cc-sdd)
|
|
517
|
-
│ ├── kiro-spec-requirements.md (cc-sdd)
|
|
518
|
-
│ ├── kiro-spec-design.md (cc-sdd)
|
|
519
|
-
│ ├── kiro-spec-tasks.md (cc-sdd)
|
|
520
|
-
│ ├── ... (cc-sdd提供の他のコマンド)
|
|
521
|
-
│ ├── michi-confluence-sync.md (Michi)
|
|
522
|
-
│ └── michi-project-switch.md (Michi)
|
|
523
|
-
└── .kiro/
|
|
524
|
-
└── specs/
|
|
525
|
-
└── java-calculator-webapp/
|
|
526
|
-
├── spec.json
|
|
527
|
-
├── requirements.md (Step 3.2 AIで作成)
|
|
528
|
-
├── design.md (Step 3.3 AIで作成)
|
|
529
|
-
├── tasks.md (Step 3.4 AIで作成)
|
|
530
|
-
├── test-type-selection.json (Step 3.6 CLIで作成)
|
|
531
|
-
├── test-specs/ (Step 3.7 CLIで作成)
|
|
532
|
-
│ └── *.md
|
|
533
|
-
└── test-execution/ (Step 3.10 Phase Bで作成、任意)
|
|
534
|
-
├── performance/
|
|
535
|
-
├── security/
|
|
536
|
-
├── integration/
|
|
537
|
-
└── e2e/
|
|
538
|
-
```
|
|
539
|
-
|
|
540
|
-
**重要な注意事項:**
|
|
541
|
-
|
|
542
|
-
Phase 0.1 (requirements)、Phase 0.2 (design)、Phase 0.5-0.6 (tasks) のCLIコマンド実行により、以下が作成されます:
|
|
543
|
-
|
|
544
|
-
- Confluenceページ(requirements、design用)
|
|
545
|
-
- JIRAチケット(tasks用)
|
|
546
|
-
|
|
547
|
-
これらはConfluence/JIRA上に作成されるため、ローカルファイルシステムには追加ファイルは生成されません。
|
|
548
|
-
|
|
549
|
-
---
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
## その他のツール
|
|
553
|
-
|
|
554
|
-
Claude Code、Claude Agent SDK、Cline、Gemini、Codexでの手動検証フローについては、以下のドキュメントを参照してください:
|
|
555
|
-
|
|
556
|
-
- [その他のツールでの検証フロー](./manual-verification-other-tools.md)
|
|
557
|
-
|
|
558
|
-
## Part 2: 自動テストワークフロー
|
|
559
|
-
|
|
560
|
-
手動検証が完了した後、または手動検証の代わりに、自動テストワークフローを実行できます。
|
|
561
|
-
|
|
562
|
-
### 2.1 開発環境での自動検証
|
|
563
|
-
|
|
564
|
-
開発環境でMichiの機能を自動でテストします。
|
|
565
|
-
|
|
566
|
-
```bash
|
|
567
|
-
cd ~/Work/git/michi
|
|
568
|
-
|
|
569
|
-
# ビルド
|
|
570
|
-
npm run build
|
|
571
|
-
|
|
572
|
-
# 自動検証スクリプトを実行
|
|
573
|
-
npm run pre-publish
|
|
574
|
-
```
|
|
575
|
-
|
|
576
|
-
#### pre-publish-check.sh の実行内容
|
|
577
|
-
|
|
578
|
-
1. TypeScriptビルド確認
|
|
579
|
-
2. テスト実行(回帰確認)
|
|
580
|
-
3. テスト用featureの初期化
|
|
581
|
-
4. 新フェーズの動作確認(0.3-0.4, 1, A, B)
|
|
582
|
-
5. バリデーションの確認
|
|
583
|
-
6. 既存フェーズの動作確認(回帰テスト)
|
|
584
|
-
7. CLIヘルプ表示確認
|
|
585
|
-
|
|
586
|
-
### 2.2 NPMパッケージとしての自動検証
|
|
587
|
-
|
|
588
|
-
実際のNPMパッケージとしてインストールした状態での動作を自動でテストします。
|
|
589
|
-
|
|
590
|
-
```bash
|
|
591
|
-
cd ~/Work/git/michi
|
|
592
|
-
|
|
593
|
-
# ビルド
|
|
594
|
-
npm run build
|
|
595
|
-
|
|
596
|
-
# パッケージテストスクリプトを実行
|
|
597
|
-
npm run test:package
|
|
598
|
-
```
|
|
599
|
-
|
|
600
|
-
#### test-npm-package.sh の実行内容
|
|
601
|
-
|
|
602
|
-
1. パッケージのビルド
|
|
603
|
-
2. npm pack でパッケージを作成
|
|
604
|
-
3. テストディレクトリの作成(`/tmp/michi-test-*`)
|
|
605
|
-
4. パッケージのインストール
|
|
606
|
-
5. `.kiro` ディレクトリ構造の準備
|
|
607
|
-
6. CLIコマンドの動作確認(phase:run)
|
|
608
|
-
7. バリデーションの確認(validate:phase)
|
|
609
|
-
8. CLIヘルプの確認
|
|
610
|
-
9. 自動クリーンアップ
|
|
611
|
-
|
|
612
|
-
### 2.3 カスタムテストディレクトリの指定
|
|
613
|
-
|
|
614
|
-
デフォルトでは `/tmp/michi-test-*` が使用されますが、カスタムディレクトリを指定することもできます:
|
|
615
|
-
|
|
616
|
-
```bash
|
|
617
|
-
# カスタムディレクトリでテスト
|
|
618
|
-
bash scripts/test-npm-package.sh /tmp/my-custom-test-dir
|
|
619
|
-
```
|
|
620
|
-
|
|
621
|
-
---
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
## トラブルシューティング
|
|
625
|
-
|
|
626
|
-
手動検証フローでの問題が発生した場合は、以下のドキュメントを参照してください:
|
|
627
|
-
|
|
628
|
-
- [トラブルシューティングガイド](./manual-verification-troubleshooting.md)
|
|
629
|
-
|
|
630
|
-
## まとめ
|
|
631
|
-
|
|
632
|
-
### 検証が必要な項目
|
|
633
|
-
|
|
634
|
-
1. ✅ **Cursor IDE** - 完全に動作確認済み
|
|
635
|
-
2. ✅ **Claude Code** - 完全に動作確認済み
|
|
636
|
-
3. ⚠️ **Claude Agent SDK** - 暫定対応、詳細な検証が必要
|
|
637
|
-
4. ❓ **Cline** - cc-sdd対応が不明、検証が必要
|
|
638
|
-
5. 🚧 **Gemini** - 開発中、対応待ち
|
|
639
|
-
6. 🚧 **Codex** - 開発中、対応待ち
|
|
640
|
-
|
|
641
|
-
### 推奨される検証順序
|
|
642
|
-
|
|
643
|
-
1. **自動テスト(必須)**
|
|
644
|
-
|
|
645
|
-
```bash
|
|
646
|
-
npm run pre-publish
|
|
647
|
-
npm run test:package
|
|
648
|
-
```
|
|
649
|
-
|
|
650
|
-
2. **Cursor IDEでの手動検証(推奨)**
|
|
651
|
-
- 最も安定した環境での動作確認
|
|
652
|
-
|
|
653
|
-
3. **Claude Codeでの手動検証(推奨)**
|
|
654
|
-
- もう1つの主要ツールでの動作確認
|
|
655
|
-
|
|
656
|
-
4. **その他のツール(任意)**
|
|
657
|
-
- 時間とリソースがあれば、Claude Agent SDK、Clineでも検証
|
|
658
|
-
|
|
659
|
-
### チェックリスト
|
|
660
|
-
|
|
661
|
-
publish前に以下をすべて確認してください:
|
|
662
|
-
|
|
663
|
-
- [ ] `npm run pre-publish` が成功
|
|
664
|
-
- [ ] `npm run test:package` が成功
|
|
665
|
-
- [ ] Cursor IDEでの手動検証が成功(推奨)
|
|
666
|
-
- [ ] Claude Codeでの手動検証が成功(推奨)
|
|
667
|
-
- [ ] package.jsonのバージョンが更新されている
|
|
668
|
-
- [ ] CHANGELOG.mdが更新されている
|
|
669
|
-
- [ ] すべてのコミットがプッシュされている
|
|
670
|
-
- [ ] GitHubでCIが成功している
|
|
671
|
-
|
|
672
|
-
---
|
|
673
|
-
|
|
674
|
-
---
|
|
675
|
-
|
|
676
|
-
## Part 3: Phase Bテストの対話的作成フロー
|
|
677
|
-
|
|
678
|
-
このセクションでは、AIとの対話を通じて手動回帰テスト、負荷テスト、セキュリティテストを作成する方法を説明します。
|
|
679
|
-
|
|
680
|
-
### 3.1 対話フロー概要
|
|
681
|
-
|
|
682
|
-
```
|
|
683
|
-
[開始] ユーザーがテスト作成を依頼
|
|
684
|
-
↓
|
|
685
|
-
[ヒアリング] AIが必須項目を確認
|
|
686
|
-
- テスト対象(エンドポイント、機能)
|
|
687
|
-
- テストタイプ(手動回帰/負荷/セキュリティ)
|
|
688
|
-
- 成功基準(応答時間、エラー率など)
|
|
689
|
-
↓
|
|
690
|
-
[テンプレート選択] AIが適切なテンプレートを参照
|
|
691
|
-
↓
|
|
692
|
-
[生成] AIがテストを作成
|
|
693
|
-
↓
|
|
694
|
-
[レビュー] ユーザーがレビュー
|
|
695
|
-
↓
|
|
696
|
-
[修正] 必要に応じて修正
|
|
697
|
-
↓
|
|
698
|
-
[完了] テスト成果物の確定
|
|
699
|
-
```
|
|
700
|
-
|
|
701
|
-
### 3.2 手動回帰テストの作成
|
|
702
|
-
|
|
703
|
-
#### 初期ヒアリング
|
|
704
|
-
|
|
705
|
-
AIに手動回帰テストの作成を依頼する際、以下の情報を提供してください:
|
|
706
|
-
|
|
707
|
-
| 項目 | 説明 | 例 |
|
|
708
|
-
| ------------------------ | ---------------------- | --------------------------- |
|
|
709
|
-
| テスト対象エンドポイント | APIのURL | `/api/calculator/evaluate` |
|
|
710
|
-
| HTTPメソッド | GET, POST, PUT, DELETE | `POST` |
|
|
711
|
-
| リクエストボディ形式 | JSON, XML, Form | `JSON` |
|
|
712
|
-
| 期待するHTTPステータス | 成功/エラー時 | `200 OK`, `400 Bad Request` |
|
|
713
|
-
| 期待するレスポンス形式 | レスポンスの構造 | `{"result": number}` |
|
|
714
|
-
|
|
715
|
-
#### サンプルプロンプト
|
|
716
|
-
|
|
717
|
-
```
|
|
718
|
-
Calculator APIの手動回帰テストを作成してください。
|
|
719
|
-
|
|
720
|
-
テスト対象:
|
|
721
|
-
- エンドポイント: POST /api/calculator/evaluate
|
|
722
|
-
- リクエストボディ: {"expression": "計算式"}
|
|
723
|
-
- 期待レスポンス: {"result": 計算結果} または {"error": "エラーメッセージ"}
|
|
724
|
-
|
|
725
|
-
テストケースの種類:
|
|
726
|
-
- 正常系: 基本的な四則演算、優先順位、小数点計算
|
|
727
|
-
- 異常系: ゼロ除算、構文エラー、空の式
|
|
728
|
-
- セキュリティ: SQLインジェクション風入力、長大入力
|
|
729
|
-
```
|
|
730
|
-
|
|
731
|
-
#### 生成されるファイル
|
|
732
|
-
|
|
733
|
-
- `docs/testing/manual-regression-guide.md`
|
|
734
|
-
- または `tests/manual/regression-tests.md`
|
|
735
|
-
|
|
736
|
-
### 3.3 負荷テストの作成
|
|
737
|
-
|
|
738
|
-
#### 初期ヒアリング
|
|
739
|
-
|
|
740
|
-
AIに負荷テストの作成を依頼する際、以下の情報を提供してください:
|
|
741
|
-
|
|
742
|
-
| 項目 | 説明 | 例 |
|
|
743
|
-
| ---------------- | ----------------------- | ----------------------- |
|
|
744
|
-
| テスト対象URL | APIのベースURL | `http://localhost:8080` |
|
|
745
|
-
| 同時ユーザー数 | 最大同時接続数 | `100` |
|
|
746
|
-
| Spawn rate | ユーザー増加率 | `10/秒` |
|
|
747
|
-
| テスト時間 | 実行時間 | `60秒` |
|
|
748
|
-
| 目標スループット | 1秒あたりのリクエスト数 | `100 req/s` |
|
|
749
|
-
| 目標応答時間 | 平均応答時間 | `< 100ms` |
|
|
750
|
-
|
|
751
|
-
#### サンプルプロンプト
|
|
752
|
-
|
|
753
|
-
```
|
|
754
|
-
Calculator APIの負荷テストをLocustで作成してください。
|
|
755
|
-
|
|
756
|
-
テスト対象:
|
|
757
|
-
- URL: http://localhost:8080
|
|
758
|
-
- エンドポイント: POST /api/calculator/evaluate
|
|
759
|
-
|
|
760
|
-
テスト要件:
|
|
761
|
-
- 同時ユーザー数: 100
|
|
762
|
-
- Spawn rate: 10ユーザー/秒
|
|
763
|
-
- テスト時間: 60秒
|
|
764
|
-
|
|
765
|
-
成功基準:
|
|
766
|
-
- 平均応答時間: < 100ms
|
|
767
|
-
- 95パーセンタイル: < 200ms
|
|
768
|
-
- エラー率: < 1%
|
|
769
|
-
- スループット: > 100 req/s
|
|
770
|
-
|
|
771
|
-
シナリオ:
|
|
772
|
-
- 基本的な計算(重み5)
|
|
773
|
-
- 複雑な計算(重み3)
|
|
774
|
-
- 小数点計算(重み2)
|
|
775
|
-
```
|
|
776
|
-
|
|
777
|
-
#### 生成されるファイル
|
|
778
|
-
|
|
779
|
-
- `tests/load/locustfile.py`
|
|
780
|
-
- `tests/load/requirements.txt`
|
|
781
|
-
- `tests/load/README.md`
|
|
782
|
-
|
|
783
|
-
### 3.4 セキュリティテストの作成
|
|
784
|
-
|
|
785
|
-
#### 初期ヒアリング
|
|
786
|
-
|
|
787
|
-
AIにセキュリティテストの作成を依頼する際、以下の情報を提供してください:
|
|
788
|
-
|
|
789
|
-
| 項目 | 説明 | 例 |
|
|
790
|
-
| -------------- | ------------------------ | -------------------------- |
|
|
791
|
-
| テスト対象URL | APIのベースURL | `http://localhost:8080` |
|
|
792
|
-
| スキャンタイプ | Baseline/Quick/Full | `Quick` |
|
|
793
|
-
| 認証の有無 | 認証が必要か | `なし` |
|
|
794
|
-
| 検出対象 | 重点的に検出したい脆弱性 | `SQLインジェクション, XSS` |
|
|
795
|
-
|
|
796
|
-
#### サンプルプロンプト
|
|
797
|
-
|
|
798
|
-
```
|
|
799
|
-
Calculator APIのセキュリティテストをOWASP ZAPで作成してください。
|
|
800
|
-
|
|
801
|
-
テスト対象:
|
|
802
|
-
- URL: http://localhost:8080
|
|
803
|
-
- エンドポイント: /api/calculator/evaluate
|
|
804
|
-
- 認証: なし
|
|
805
|
-
|
|
806
|
-
スキャン要件:
|
|
807
|
-
- スキャンタイプ: Quick(API向け)
|
|
808
|
-
- 実行環境: Docker
|
|
809
|
-
|
|
810
|
-
検出対象:
|
|
811
|
-
- SQLインジェクション
|
|
812
|
-
- XSS(クロスサイトスクリプティング)
|
|
813
|
-
- コマンドインジェクション
|
|
814
|
-
- 情報漏洩
|
|
815
|
-
|
|
816
|
-
レポート形式:
|
|
817
|
-
- HTML(ブラウザ閲覧用)
|
|
818
|
-
- JSON(CI/CD連携用)
|
|
819
|
-
```
|
|
820
|
-
|
|
821
|
-
#### 生成されるファイル
|
|
822
|
-
|
|
823
|
-
- `tests/security/zap-config.yaml`
|
|
824
|
-
- `tests/security/run-zap-scan.sh`
|
|
825
|
-
- `tests/security/README.md`
|
|
826
|
-
|
|
827
|
-
### 3.5 テスト修正の依頼方法
|
|
828
|
-
|
|
829
|
-
生成されたテストを修正する場合、以下のようにAIに依頼します:
|
|
830
|
-
|
|
831
|
-
#### 修正依頼の例
|
|
832
|
-
|
|
833
|
-
```
|
|
834
|
-
# テストケースの追加
|
|
835
|
-
負荷テストに以下のシナリオを追加してください:
|
|
836
|
-
- ランダムな数式を生成するテスト(重み1)
|
|
837
|
-
- エラーハンドリングのテスト(重み1)
|
|
838
|
-
|
|
839
|
-
# パラメータの変更
|
|
840
|
-
同時ユーザー数を100から500に変更してください。
|
|
841
|
-
|
|
842
|
-
# 成功基準の変更
|
|
843
|
-
95パーセンタイルの目標を200msから150msに変更してください。
|
|
844
|
-
|
|
845
|
-
# ツールの変更
|
|
846
|
-
負荷テストをLocustからk6に変更してください。
|
|
847
|
-
```
|
|
848
|
-
|
|
849
|
-
### 3.6 対話的作成のベストプラクティス
|
|
850
|
-
|
|
851
|
-
1. **段階的に作成**: まず基本的なテストを生成し、レビュー後に追加・修正
|
|
852
|
-
2. **具体的な数値を提供**: 「高負荷」ではなく「同時100ユーザー」のように具体的に
|
|
853
|
-
3. **成功基準を明確に**: 何をもって成功とするか事前に定義
|
|
854
|
-
4. **既存テストを参照**: 既存のテストファイルがあれば、それを元に拡張
|
|
855
|
-
5. **テンプレートを活用**: AIにテンプレートを参照させることで一貫性を確保
|
|
856
|
-
|
|
857
|
-
### 3.7 使用ツール一覧
|
|
858
|
-
|
|
859
|
-
| テストタイプ | 推奨ツール | 代替ツール |
|
|
860
|
-
| ------------------ | --------------- | --------------------- |
|
|
861
|
-
| 手動回帰テスト | curl + Markdown | Postman, Insomnia |
|
|
862
|
-
| 負荷テスト | Locust | k6, JMeter, Artillery |
|
|
863
|
-
| セキュリティテスト | OWASP ZAP | Burp Suite, Nikto |
|
|
864
|
-
|
|
865
|
-
---
|
|
866
|
-
|
|
867
|
-
## 参考リンク
|
|
868
|
-
|
|
869
|
-
- [Pre-Publish Checklist](./pre-publish-checklist.md) - 詳細なチェックリスト
|
|
870
|
-
- [Michi User Guide](../../user-guide/README.md) - ユーザーガイド
|
|
871
|
-
- [cc-sdd Documentation](https://github.com/example/cc-sdd) - cc-sddフレームワークのドキュメント
|