agentic-qe 2.0.0 → 2.1.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.
Files changed (116) hide show
  1. package/.claude/agents/qx-partner.md +17 -4
  2. package/.claude/skills/accessibility-testing/SKILL.md +144 -692
  3. package/.claude/skills/agentic-quality-engineering/SKILL.md +176 -529
  4. package/.claude/skills/api-testing-patterns/SKILL.md +180 -560
  5. package/.claude/skills/brutal-honesty-review/SKILL.md +113 -603
  6. package/.claude/skills/bug-reporting-excellence/SKILL.md +116 -517
  7. package/.claude/skills/chaos-engineering-resilience/SKILL.md +127 -72
  8. package/.claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md +209 -404
  9. package/.claude/skills/code-review-quality/SKILL.md +158 -608
  10. package/.claude/skills/compatibility-testing/SKILL.md +148 -38
  11. package/.claude/skills/compliance-testing/SKILL.md +132 -63
  12. package/.claude/skills/consultancy-practices/SKILL.md +114 -446
  13. package/.claude/skills/context-driven-testing/SKILL.md +117 -381
  14. package/.claude/skills/contract-testing/SKILL.md +176 -141
  15. package/.claude/skills/database-testing/SKILL.md +137 -130
  16. package/.claude/skills/exploratory-testing-advanced/SKILL.md +160 -629
  17. package/.claude/skills/holistic-testing-pact/SKILL.md +140 -188
  18. package/.claude/skills/localization-testing/SKILL.md +145 -33
  19. package/.claude/skills/mobile-testing/SKILL.md +132 -448
  20. package/.claude/skills/mutation-testing/SKILL.md +147 -41
  21. package/.claude/skills/performance-testing/SKILL.md +200 -546
  22. package/.claude/skills/quality-metrics/SKILL.md +164 -519
  23. package/.claude/skills/refactoring-patterns/SKILL.md +132 -699
  24. package/.claude/skills/regression-testing/SKILL.md +120 -926
  25. package/.claude/skills/risk-based-testing/SKILL.md +157 -660
  26. package/.claude/skills/security-testing/SKILL.md +199 -538
  27. package/.claude/skills/sherlock-review/SKILL.md +163 -699
  28. package/.claude/skills/shift-left-testing/SKILL.md +161 -465
  29. package/.claude/skills/shift-right-testing/SKILL.md +161 -519
  30. package/.claude/skills/six-thinking-hats/SKILL.md +175 -1110
  31. package/.claude/skills/skills-manifest.json +71 -20
  32. package/.claude/skills/tdd-london-chicago/SKILL.md +131 -448
  33. package/.claude/skills/technical-writing/SKILL.md +103 -154
  34. package/.claude/skills/test-automation-strategy/SKILL.md +166 -772
  35. package/.claude/skills/test-data-management/SKILL.md +126 -910
  36. package/.claude/skills/test-design-techniques/SKILL.md +179 -89
  37. package/.claude/skills/test-environment-management/SKILL.md +136 -91
  38. package/.claude/skills/test-reporting-analytics/SKILL.md +169 -92
  39. package/.claude/skills/testability-scoring/SKILL.md +172 -538
  40. package/.claude/skills/testability-scoring/scripts/generate-html-report.js +0 -0
  41. package/.claude/skills/visual-testing-advanced/SKILL.md +155 -78
  42. package/.claude/skills/xp-practices/SKILL.md +151 -587
  43. package/CHANGELOG.md +48 -0
  44. package/README.md +23 -16
  45. package/dist/agents/QXPartnerAgent.d.ts +8 -1
  46. package/dist/agents/QXPartnerAgent.d.ts.map +1 -1
  47. package/dist/agents/QXPartnerAgent.js +1174 -112
  48. package/dist/agents/QXPartnerAgent.js.map +1 -1
  49. package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
  50. package/dist/agents/lifecycle/AgentLifecycleManager.js +34 -31
  51. package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
  52. package/dist/cli/commands/init-claude-md-template.d.ts.map +1 -1
  53. package/dist/cli/commands/init-claude-md-template.js +14 -0
  54. package/dist/cli/commands/init-claude-md-template.js.map +1 -1
  55. package/dist/core/SwarmCoordinator.d.ts +180 -0
  56. package/dist/core/SwarmCoordinator.d.ts.map +1 -0
  57. package/dist/core/SwarmCoordinator.js +473 -0
  58. package/dist/core/SwarmCoordinator.js.map +1 -0
  59. package/dist/core/metrics/MetricsAggregator.d.ts +228 -0
  60. package/dist/core/metrics/MetricsAggregator.d.ts.map +1 -0
  61. package/dist/core/metrics/MetricsAggregator.js +482 -0
  62. package/dist/core/metrics/MetricsAggregator.js.map +1 -0
  63. package/dist/core/metrics/index.d.ts +5 -0
  64. package/dist/core/metrics/index.d.ts.map +1 -0
  65. package/dist/core/metrics/index.js +11 -0
  66. package/dist/core/metrics/index.js.map +1 -0
  67. package/dist/core/optimization/SwarmOptimizer.d.ts +5 -0
  68. package/dist/core/optimization/SwarmOptimizer.d.ts.map +1 -1
  69. package/dist/core/optimization/SwarmOptimizer.js +17 -0
  70. package/dist/core/optimization/SwarmOptimizer.js.map +1 -1
  71. package/dist/core/orchestration/AdaptiveScheduler.d.ts +190 -0
  72. package/dist/core/orchestration/AdaptiveScheduler.d.ts.map +1 -0
  73. package/dist/core/orchestration/AdaptiveScheduler.js +460 -0
  74. package/dist/core/orchestration/AdaptiveScheduler.js.map +1 -0
  75. package/dist/core/orchestration/WorkflowOrchestrator.d.ts +13 -0
  76. package/dist/core/orchestration/WorkflowOrchestrator.d.ts.map +1 -1
  77. package/dist/core/orchestration/WorkflowOrchestrator.js +32 -0
  78. package/dist/core/orchestration/WorkflowOrchestrator.js.map +1 -1
  79. package/dist/core/recovery/CircuitBreaker.d.ts +176 -0
  80. package/dist/core/recovery/CircuitBreaker.d.ts.map +1 -0
  81. package/dist/core/recovery/CircuitBreaker.js +382 -0
  82. package/dist/core/recovery/CircuitBreaker.js.map +1 -0
  83. package/dist/core/recovery/RecoveryOrchestrator.d.ts +186 -0
  84. package/dist/core/recovery/RecoveryOrchestrator.d.ts.map +1 -0
  85. package/dist/core/recovery/RecoveryOrchestrator.js +476 -0
  86. package/dist/core/recovery/RecoveryOrchestrator.js.map +1 -0
  87. package/dist/core/recovery/RetryStrategy.d.ts +127 -0
  88. package/dist/core/recovery/RetryStrategy.d.ts.map +1 -0
  89. package/dist/core/recovery/RetryStrategy.js +314 -0
  90. package/dist/core/recovery/RetryStrategy.js.map +1 -0
  91. package/dist/core/recovery/index.d.ts +8 -0
  92. package/dist/core/recovery/index.d.ts.map +1 -0
  93. package/dist/core/recovery/index.js +27 -0
  94. package/dist/core/recovery/index.js.map +1 -0
  95. package/dist/core/skills/DependencyResolver.d.ts +99 -0
  96. package/dist/core/skills/DependencyResolver.d.ts.map +1 -0
  97. package/dist/core/skills/DependencyResolver.js +260 -0
  98. package/dist/core/skills/DependencyResolver.js.map +1 -0
  99. package/dist/core/skills/ManifestGenerator.d.ts +114 -0
  100. package/dist/core/skills/ManifestGenerator.d.ts.map +1 -0
  101. package/dist/core/skills/ManifestGenerator.js +449 -0
  102. package/dist/core/skills/ManifestGenerator.js.map +1 -0
  103. package/dist/core/skills/index.d.ts +9 -0
  104. package/dist/core/skills/index.d.ts.map +1 -0
  105. package/dist/core/skills/index.js +24 -0
  106. package/dist/core/skills/index.js.map +1 -0
  107. package/dist/mcp/server.d.ts +9 -9
  108. package/dist/mcp/server.d.ts.map +1 -1
  109. package/dist/mcp/server.js +1 -2
  110. package/dist/mcp/server.js.map +1 -1
  111. package/dist/types/qx.d.ts +39 -7
  112. package/dist/types/qx.d.ts.map +1 -1
  113. package/dist/types/qx.js.map +1 -1
  114. package/dist/visualization/api/RestEndpoints.js +1 -1
  115. package/dist/visualization/api/RestEndpoints.js.map +1 -1
  116. package/package.json +13 -55
@@ -1,670 +1,201 @@
1
1
  ---
2
- name: advanced-exploratory-testing
3
- description: Advanced exploratory testing techniques with Session-Based Test Management (SBTM), RST heuristics, and test tours. Use when planning exploration sessions, investigating bugs, or discovering unknown quality risks.
2
+ name: exploratory-testing-advanced
3
+ description: "Advanced exploratory testing techniques with Session-Based Test Management (SBTM), RST heuristics, and test tours. Use when planning exploration sessions, investigating bugs, or discovering unknown quality risks."
4
+ category: testing-methodologies
5
+ priority: high
6
+ tokenEstimate: 1000
7
+ agents: [qe-flaky-test-hunter, qe-visual-tester, qe-quality-analyzer]
8
+ implementation_status: optimized
9
+ optimization_version: 1.0
10
+ last_optimized: 2025-12-02
11
+ dependencies: []
12
+ quick_reference_card: true
13
+ tags: [exploratory, sbtm, rst, heuristics, test-tours, session-based]
4
14
  ---
5
15
 
6
16
  # Advanced Exploratory Testing
7
17
 
8
- ## Core Concept
18
+ <default_to_action>
19
+ When exploring software or investigating quality risks:
20
+ 1. CREATE charter with mission, scope, and time-box (45-90 min)
21
+ 2. APPLY heuristics: SFDIPOT (quality criteria), FEW HICCUPPS (consistency oracles)
22
+ 3. EXPLORE systematically using test tours (Business District, Bad Neighborhood, Historical)
23
+ 4. DOCUMENT findings in real-time with notes, screenshots, evidence
24
+ 5. DEBRIEF: What learned? What's next? Share via agent memory
25
+
26
+ **Quick Heuristic Selection:**
27
+ - What to test → SFDIPOT (Structure, Function, Data, Interfaces, Platform, Operations, Time)
28
+ - Recognize problems → FEW HICCUPPS (Familiar, Explainable, World, History, Image, Comparable, Claims, Users, Product, Purpose, Standards)
29
+ - Navigate app → Test Tours (12 types for different exploration strategies)
30
+
31
+ **Critical Success Factors:**
32
+ - Exploration is skilled, structured thinking - not random clicking
33
+ - Document discoveries, not pre-planned test cases
34
+ - Pair testing reveals more than solo exploration
35
+ </default_to_action>
36
+
37
+ ## Quick Reference Card
38
+
39
+ ### When to Use
40
+ - Investigating new or changed features
41
+ - Finding bugs automation misses
42
+ - Learning unfamiliar systems
43
+ - Risk discovery before test planning
44
+
45
+ ### Session Structure (SBTM)
46
+ | Phase | Duration | Activity |
47
+ |-------|----------|----------|
48
+ | Charter | 5 min | Define mission, scope, focus |
49
+ | Explore | 45-75 min | Systematic investigation |
50
+ | Note | Continuous | Document findings real-time |
51
+ | Debrief | 10-15 min | Summarize, prioritize, share |
52
+
53
+ ### SFDIPOT Heuristic (What to Test)
54
+ | Letter | Focus | Example Questions |
55
+ |--------|-------|------------------|
56
+ | **S**tructure | Is it properly composed? | Code structure, UI layout, data schema |
57
+ | **F**unction | Does it do what it should? | Core features work correctly |
58
+ | **D**ata | Handles data correctly? | CRUD, validation, persistence |
59
+ | **I**nterfaces | Interacts well? | APIs, UI, integrations |
60
+ | **P**latform | Works in environment? | Browsers, OS, devices |
61
+ | **O**perations | Can be used/managed? | Install, config, monitor |
62
+ | **T**ime | Handles timing? | Concurrency, timeouts, scheduling |
63
+
64
+ ### FEW HICCUPPS Oracle (Recognize Problems)
65
+ | Consistency With | Check |
66
+ |-----------------|-------|
67
+ | **F**amiliar problems | Does this look like a known bug pattern? |
68
+ | **E**xplainable | Can behavior be explained rationally? |
69
+ | **W**orld | Matches real-world expectations? |
70
+ | **H**istory | Consistent with prior versions? |
71
+ | **I**mage | Matches brand/product image? |
72
+ | **C**omparable | Similar to competing products? |
73
+ | **C**laims | Matches specs/docs/marketing? |
74
+ | **U**sers | Meets user expectations? |
75
+ | **P**urpose | Fulfills intended purpose? |
76
+ | **S**tatements | Matches what devs said? |
77
+
78
+ ### Test Tours (12 Types)
79
+ | Tour | Strategy |
80
+ |------|----------|
81
+ | Business District | Critical business flows |
82
+ | Historical | Where bugs clustered before |
83
+ | Bad Neighborhood | Known problem areas |
84
+ | Money | Revenue-impacting features |
85
+ | Landmark | Navigate by key features |
86
+ | Intellectual | Complex, thinking-intensive features |
87
+ | FedEx | Follow data through system |
88
+ | Garbage Collector | Cleanup and edge cases |
89
+ | Museum | Help docs and examples |
90
+ | Rained-Out | What happens when things fail? |
91
+ | Couch Potato | Minimal effort paths |
92
+ | Obsessive-Compulsive | Repetitive actions |
9
93
 
10
- Exploratory testing is simultaneous learning, test design, and test execution. It's not "ad-hoc" testing - it's skilled investigation guided by heuristics, experience, and critical thinking.
11
-
12
- ## Session-Based Test Management (SBTM)
13
-
14
- ### Session Structure
15
-
16
- **Charter (Mission Statement)**
17
- ```
18
- Explore [area]
19
- With [resources/tools]
20
- To discover [information/risks]
21
- ```
22
-
23
- **Example:**
24
- "Explore the checkout payment flow with various card types to discover edge cases in error handling and validation."
25
-
26
- ### Session Duration
27
- - **Short:** 45-60 minutes (focused investigation)
28
- - **Standard:** 90 minutes (deeper exploration)
29
- - **Long:** 2 hours (complex feature deep dive)
30
-
31
- **Why time-box?** Prevents endless wandering, creates focus, enables planning.
32
-
33
- ### Session Notes Template
34
-
35
- ```markdown
36
- ## Session Charter
37
- [Your mission]
38
-
39
- ## Start Time: [timestamp]
40
- ## Tester: [name]
41
-
42
- ## Test Notes (What you did)
43
- - Tested checkout with Visa card → Success
44
- - Tried expired card → Error message unclear "Payment failed"
45
- - Discovered: No distinction between expired, invalid, or declined
46
- - Tried $0.01 transaction → Processed (should block?)
47
- - Card with special chars in name → App crashed (500 error)
48
-
49
- ## Bugs Found
50
- 1. [BUG-123] Unclear error messages for card failures
51
- 2. [BUG-124] App crashes on special characters in cardholder name
52
- 3. [BUG-125] Micro-transactions not blocked despite policy
53
-
54
- ## Questions / Issues
55
- - What's the minimum transaction amount?
56
- - Should we support international cards?
57
- - Who handles fraud detection?
58
-
59
- ## Areas Not Covered
60
- - Refund flow
61
- - Subscription payments
62
- - Multiple payment methods
63
-
64
- ## Duration: [actual time]
65
- ## Session %: [test execution vs setup/bugs/other]
66
- ```
67
-
68
- ### Session Metrics
69
-
70
- **TBS (Test/Bug/Setup) Breakdown:**
71
- - **Test %:** Actual exploration time
72
- - **Bug %:** Time investigating/reporting bugs
73
- - **Setup %:** Time getting environment ready
74
-
75
- **Target:** 60-70% test, rest is normal overhead
76
-
77
- ## RST Heuristics Deep Dive
78
-
79
- ### SFDIPOT (Quality Criteria)
80
-
81
- **Structure**
82
- - Is the code organized logically?
83
- - Are modules properly separated?
84
- - Dependencies managed correctly?
85
- - Configuration files valid?
86
-
87
- **Test:** "Import malformed config file, does app handle gracefully?"
88
-
89
- **Function**
90
- - Does it do what it claims?
91
- - All features working as expected?
92
- - Business logic correct?
93
-
94
- **Test:** "Calculate 15% tip on $47.82, does it match manual calculation?"
95
-
96
- **Data**
97
- - Input validation working?
98
- - Data types handled correctly?
99
- - Boundary values tested?
100
- - Data persistence reliable?
101
-
102
- **Test:** "Enter 999-character username, what happens?"
103
-
104
- **Interfaces**
105
- - APIs returning correct responses?
106
- - UI elements responding properly?
107
- - Integration points working?
108
- - Error messages clear?
109
-
110
- **Test:** "Call API with missing required field, is error message helpful?"
111
-
112
- **Platform**
113
- - Works across browsers/devices?
114
- - OS compatibility verified?
115
- - Screen sizes handled?
116
- - Network conditions varied?
117
-
118
- **Test:** "Use on mobile Chrome, iOS Safari, desktop Firefox - any differences?"
119
-
120
- **Operations**
121
- - Installation smooth?
122
- - Upgrade path works?
123
- - Logs useful for debugging?
124
- - Performance acceptable?
125
-
126
- **Test:** "Upgrade from v2.1 to v3.0, does migration preserve data?"
127
-
128
- **Time**
129
- - Handles timeouts correctly?
130
- - Concurrent operations safe?
131
- - Scheduled tasks running?
132
- - Race conditions handled?
133
-
134
- **Test:** "Submit form twice rapidly, does it create duplicate records?"
135
-
136
- ### FEW HICCUPPS (Product Elements to Test)
137
-
138
- **Familiarity** - Is it like things users know?
139
- **Explainability** - Can users understand it?
140
- **World** - Does it work in the real world context?
141
-
142
- **History** - Consistent with previous versions?
143
- **Image** - Does it match brand/expectations?
144
- **Comparable Products** - How does it compare to competitors?
145
- **Claims** - Does it deliver on promises?
146
- **Users** - Does it meet user needs?
147
- **Purpose** - Does it solve the problem?
148
- **Policies** - Compliant with regulations?
149
- **Standards** - Meets industry standards?
150
-
151
- ### CRUSSPIC STMP (Test Techniques)
152
-
153
- **Create** - Create new records/entities
154
- **Read** - View/retrieve information
155
- **Update** - Modify existing data
156
- **Search** - Find specific items
157
- **Sort** - Order results
158
- **Print** - Export/output data
159
- **Import** - Bring in external data
160
- **Configure** - Change settings
161
-
162
- **Status** - Check system state
163
- **Tourism** - Explore like different user types
164
- **Modeling** - Model expected behavior
165
- **Patterns** - Look for recurring issues
166
-
167
- ### Test Tours (Exploration Strategies)
168
-
169
- **Business District Tour**
170
- Visit critical business functions first. Focus on revenue-generating features.
171
-
172
- **Example:** E-commerce → checkout, payment, order confirmation
173
-
174
- **Historical Tour**
175
- Test areas with known bug history. Old problems often resurface.
176
-
177
- **Example:** Check last 3 sprints' bug reports, test those areas
178
-
179
- **Bad Neighborhood Tour**
180
- Explore where bugs cluster. Some modules are just trouble-prone.
181
-
182
- **Example:** If authentication always has issues, test it thoroughly
183
-
184
- **Tourist Tour**
185
- Follow the path a new user would take. First impressions matter.
186
-
187
- **Example:** Sign up → onboarding → first successful action
188
-
189
- **Museum Tour**
190
- Explore help documentation, examples, tutorials. Do they work?
191
-
192
- **Example:** Follow the "Getting Started" guide exactly as written
193
-
194
- **Saboteur Tour**
195
- Try to break things deliberately. Think like an attacker or malicious user.
196
-
197
- **Example:** SQL injection attempts, XSS, CSRF, buffer overflows
198
-
199
- **Fed-Ex Tour**
200
- Follow data through the system. Track it end-to-end.
201
-
202
- **Example:** User registration → email verification → profile creation → first purchase
203
-
204
- **All-Nighter Tour**
205
- Test during extended use. Does performance degrade over time?
206
-
207
- **Example:** Leave app running for 8 hours with periodic interactions
208
-
209
- **Obsessive-Compulsive Tour**
210
- Repeat the same operation many times. Does it stay consistent?
211
-
212
- **Example:** Save document 50 times in a row, check for corruption
213
-
214
- **Supermodel Tour**
215
- Focus purely on UI/UX. Is it beautiful AND usable?
216
-
217
- **Example:** Check spacing, fonts, colors, alignment, accessibility
218
-
219
- **Couch Potato Tour**
220
- Do the minimum possible. Does lazy usage break things?
221
-
222
- **Example:** Leave forms partially filled, navigate away and back
223
-
224
- **Antisocial Tour**
225
- Refuse to follow expected workflow. Go backward, skip steps, break sequence.
226
-
227
- **Example:** Checkout without items, skip required steps, use back button
228
-
229
- ## Exploratory Test Design Patterns
230
-
231
- ### Pattern 1: Variation Testing
232
-
233
- Pick one variable, vary it systematically while keeping others constant.
234
-
235
- **Example: Login Testing**
236
- ```
237
- Username: valid
238
- Password: [vary this]
239
- - Empty
240
- - Wrong password
241
- - Correct password
242
- - SQL injection string
243
- - 1000 characters
244
- - Special characters
245
- - Unicode
246
- ```
247
-
248
- ### Pattern 2: Boundary Testing
249
-
250
- Test edges and limits.
251
-
252
- ```
253
- Field: Age
254
- - Minimum valid: 18
255
- - Just below: 17
256
- - Just above: 19
257
- - Maximum valid: 120
258
- - Just above max: 121
259
- - Zero: 0
260
- - Negative: -5
261
- - Non-integer: 18.5
262
- ```
263
-
264
- ### Pattern 3: Combo Testing
265
-
266
- Test interactions between features.
267
-
268
- ```
269
- Feature A: Dark mode
270
- Feature B: High contrast mode
271
- Test: Both enabled simultaneously - readable?
272
- ```
273
-
274
- ### Pattern 4: State Transition Testing
275
-
276
- Map application states, test transitions.
277
-
278
- ```
279
- Cart States:
280
- Empty → Has Items → Checkout Started → Payment → Order Complete
281
-
282
- Test each transition and invalid transitions:
283
- - Empty → Checkout (should block)
284
- - Has Items → Order Complete (skip payment - should block)
285
- ```
286
-
287
- ### Pattern 5: Interrupt Testing
288
-
289
- Interrupt processes mid-flow.
290
-
291
- ```
292
- During file upload:
293
- - Close browser
294
- - Kill network
295
- - Power off device
296
- - Navigate away
297
- Result: Should recover gracefully
298
- ```
299
-
300
- ## Bug Reporting from Exploration
94
+ ---
301
95
 
302
- ### Effective Bug Report Structure
96
+ ## Session Note Template
303
97
 
304
98
  ```markdown
305
- ## BUG-456: Checkout crashes on special characters in address
306
-
307
- **Severity:** High
308
- **Priority:** Medium
309
-
310
- **Environment:**
311
- - Chrome 118.0 on macOS 14.1
312
- - Production environment
313
- - User role: Customer
314
-
315
- **Steps to Reproduce:**
316
- 1. Add item to cart
317
- 2. Proceed to checkout
318
- 3. Enter address with apostrophe: "123 O'Brien Street"
319
- 4. Click "Continue"
320
-
321
- **Expected Result:**
322
- Address accepted, proceed to payment
323
-
324
- **Actual Result:**
325
- 500 Internal Server Error
326
- Console shows: "Unescaped character in SQL query"
99
+ **Charter:** Explore [area] to discover [what] focusing on [heuristic]
100
+ **Time-box:** 60 min | **Tester:** [name] | **Date:** [date]
327
101
 
328
- **Additional Context:**
329
- - Tested with other special chars: &, <, > - same crash
330
- - Regular addresses work fine
331
- - Issue reproducible 100% of the time
332
- - Potential SQL injection vulnerability
102
+ ## Session Notes
103
+ - [timestamp] Observation/finding
104
+ - [timestamp] Bug: [description] - [severity]
105
+ - [timestamp] Question: [unclear behavior]
333
106
 
334
- **Logs:**
335
- [Attach relevant logs]
107
+ ## Findings Summary
108
+ - Bugs: X (Critical: Y, Major: Z)
109
+ - Questions: X
110
+ - Ideas: X
336
111
 
337
- **Screenshots:**
338
- [Attach error screenshot]
112
+ ## Coverage
113
+ - Areas explored: [list]
114
+ - Heuristics used: [SFDIPOT areas]
115
+ - % Time on: Bug investigation 30%, Exploration 50%, Setup 20%
339
116
 
340
- **Impact:**
341
- - Blocks all users with apostrophes in address
342
- - Estimated 2-5% of user base
343
- - Security risk (SQL injection)
344
-
345
- **Workaround:**
346
- Tell users to omit apostrophes temporarily
347
-
348
- **Suggested Fix:**
349
- Parameterize SQL queries, use prepared statements
117
+ ## Next Steps
118
+ - [ ] Deep dive on [area]
119
+ - [ ] Follow up on question about [topic]
350
120
  ```
351
121
 
352
- ### Bug Triage During Exploration
353
-
354
- **Stop and file immediately if:**
355
- - Security vulnerability
356
- - Data corruption
357
- - Complete feature failure
358
- - Crash/exception
359
-
360
- **Note and continue if:**
361
- - Minor UI glitch
362
- - Spelling error
363
- - Edge case with workaround
364
- - Performance slightly slower
365
-
366
- **End session notes if:**
367
- - Multiple similar bugs (pattern detected)
368
- - Enhancement ideas
369
- - Questions for product team
370
-
371
- ## Collaborative Exploratory Testing
372
-
373
- ### Pair Exploration
374
-
375
- **Navigator:** Directs testing strategy, takes notes
376
- **Driver:** Operates application, reports observations
377
-
378
- **Benefits:**
379
- - Two perspectives simultaneously
380
- - One focuses on exploration, one on documentation
381
- - Real-time discussion of findings
382
- - Better coverage
383
-
384
- **Rotation:** Switch roles every 20-30 minutes
385
-
386
- ### Mob Exploration
387
-
388
- 3-5 people exploring together:
389
- - One driver
390
- - Others observe, suggest tests, take notes
391
- - Rotate driver every 15 minutes
392
-
393
- **Use when:**
394
- - Complex new feature
395
- - High-risk area
396
- - Training new testers
397
- - Critical bug investigation
398
-
399
- ## Exploratory Testing + Automation
400
-
401
- ### Automation-Assisted Exploration
402
-
403
- **Use automation to:**
404
- - Generate test data
405
- - Set up complex scenarios
406
- - Reset environment between sessions
407
- - Capture screenshots/videos automatically
408
- - Monitor logs in real-time
409
-
410
- **Example:**
411
- ```bash
412
- # Script to set up test scenario
413
- ./setup-test-user.sh --role=premium --with-orders=5
414
-
415
- # Now explore manually with realistic data ready
416
- ```
417
-
418
- ### Exploration-Informed Automation
419
-
420
- **After exploration session:**
421
- 1. Identify tests that are:
422
- - Repetitive
423
- - Regression-prone
424
- - Require exact same steps
425
-
426
- 2. Automate those specific tests
427
-
428
- 3. Continue exploring new areas
429
-
430
- **Don't automate:**
431
- - Exploratory testing itself
432
- - One-time investigations
433
- - Rapidly changing features
434
-
435
- ## Metrics for Exploratory Testing
436
-
437
- ### Session Coverage
438
-
439
- Track which areas explored:
440
- ```
441
- Feature Map:
442
- ├─ Authentication [explored]
443
- │ ├─ Login [thoroughly tested]
444
- │ ├─ Registration [briefly tested]
445
- │ └─ Password Reset [not yet tested]
446
- ├─ Checkout [explored]
447
- │ ├─ Cart [thoroughly tested]
448
- │ ├─ Payment [medium coverage]
449
- │ └─ Confirmation [briefly tested]
450
- ```
451
-
452
- ### Bug Detection Rate
453
-
454
- ```
455
- Sprint 12:
456
- - 8 exploratory sessions (12 hours total)
457
- - 23 bugs found
458
- - 19 bugs were unique (not found by automation)
459
- - Bug detection rate: 1.9 bugs/hour
460
- ```
461
-
462
- ### Risk Coverage
463
-
464
- ```
465
- High-risk areas (payment, auth, data export):
466
- - Planned: 10 hours
467
- - Executed: 12 hours
468
- - Bugs found: 15 (5 critical)
469
- - Status: Well covered
470
-
471
- Medium-risk areas:
472
- - Planned: 6 hours
473
- - Executed: 4 hours
474
- - Bugs found: 7 (0 critical)
475
- - Status: More exploration needed
476
-
477
- Low-risk areas:
478
- - Planned: 2 hours
479
- - Executed: 1 hour
480
- - Status: Adequate
481
- ```
482
-
483
- ## Common Mistakes
484
-
485
- ### ❌ No Charter
486
- **Problem:** Aimless wandering, unclear what was tested
487
-
488
- **Fix:** Always start with clear charter
489
-
490
- ### ❌ Too Long Sessions
491
- **Problem:** Mental fatigue, diminishing returns after 2 hours
492
-
493
- **Fix:** Keep sessions 45-90 minutes, take breaks
494
-
495
- ### ❌ Not Taking Notes
496
- **Problem:** Can't reproduce bugs, forget what was tested
497
-
498
- **Fix:** Take notes continuously during session
499
-
500
- ### ❌ Testing Same Things
501
- **Problem:** Repetitive testing, missing new areas
502
-
503
- **Fix:** Use session coverage map, vary tours
504
-
505
- ### ❌ Ignoring Automation
506
- **Problem:** Wasting time on repetitive setup
507
-
508
- **Fix:** Automate environment setup, data generation
509
-
510
- ## Advanced Techniques
511
-
512
- ### Hypothesis-Driven Exploration
513
-
514
- ```
515
- Hypothesis: "Payment fails under high load"
516
-
517
- Test Design:
518
- 1. Simulate 100 concurrent checkouts
519
- 2. Monitor error rates
520
- 3. Check if errors correlate with load
521
- 4. Investigate failed transactions
522
-
523
- Result: Confirmed - database connection pool exhausted
524
- ```
525
-
526
- ### Personas-Based Exploration
527
-
528
- Test as different user types:
529
-
530
- **Persona 1: Novice User**
531
- - Doesn't read instructions
532
- - Makes mistakes frequently
533
- - Uses basic features only
534
-
535
- **Persona 2: Power User**
536
- - Uses keyboard shortcuts
537
- - Combines features in unexpected ways
538
- - Pushes limits
539
-
540
- **Persona 3: Malicious User**
541
- - Tries to break security
542
- - Attempts to access unauthorized data
543
- - Injects malicious input
544
-
545
- ### State Model Exploration
122
+ ---
546
123
 
547
- ```
548
- Application States:
549
- [Logged Out] → [Logged In] → [Premium User] → [Suspended]
124
+ ## Agent-Assisted Exploration
550
125
 
551
- Test state transitions:
552
- - Valid: Logged Out → Logged In ✓
553
- - Invalid: Logged Out → Premium User ✗ (should block)
554
- - Edge: Suspended attempt action (should prevent)
126
+ ```typescript
127
+ // Collaborative exploration session
128
+ await Task("Exploratory Session", {
129
+ charter: 'Explore checkout flow for payment edge cases',
130
+ duration: '60min',
131
+ heuristics: ['SFDIPOT', 'FEW_HICCUPPS'],
132
+ tour: 'money',
133
+ collaboration: 'human-navigator-agent-driver'
134
+ }, "qe-flaky-test-hunter");
135
+
136
+ // Agent generates test variations while human observes
137
+ await Task("Edge Case Generation", {
138
+ area: 'payment-form',
139
+ variations: ['boundary-values', 'invalid-inputs', 'concurrent-submits']
140
+ }, "qe-test-generator");
141
+
142
+ // Visual exploration
143
+ await Task("Visual Exploration", {
144
+ tour: 'landmark',
145
+ focus: 'responsive-breakpoints',
146
+ compare: 'baseline-screenshots'
147
+ }, "qe-visual-tester");
555
148
  ```
556
149
 
557
- ## Tools for Exploratory Testing
558
-
559
- **Session Management:**
560
- - Rapid Reporter (session notes)
561
- - TestBuddy (charters and notes)
562
- - Excel/Notion (custom templates)
563
-
564
- **Screen Recording:**
565
- - OBS Studio (screen capture)
566
- - Loom (quick videos)
567
- - Browser DevTools (network/console logs)
568
-
569
- **Note Taking:**
570
- - Obsidian (markdown notes with linking)
571
- - Notion (structured templates)
572
- - Simple text file (lightweight)
573
-
574
- **Test Data:**
575
- - Faker.js (generate realistic data)
576
- - Mockaroo (custom data sets)
577
- - SQL scripts (predefined scenarios)
578
-
579
- ## Using with QE Agents
150
+ ---
580
151
 
581
- ### Agent-Assisted Exploration
152
+ ## Agent Coordination Hints
582
153
 
583
- **qe-flaky-test-hunter** uses this skill:
584
- ```typescript
585
- // Agent uses exploration tours to hunt flaky tests
586
- await agent.exploreWithTour({
587
- tour: 'bad-neighborhood', // Focus on trouble-prone areas
588
- duration: '90min',
589
- charter: 'Discover flaky test patterns in authentication'
590
- });
154
+ ### Memory Namespace
591
155
  ```
592
-
593
- **qe-visual-tester** applies exploratory techniques:
594
- ```typescript
595
- // Agent explores UI using Supermodel Tour
596
- await agent.visualExploration({
597
- tour: 'supermodel', // Focus on visual/UX aspects
598
- heuristic: 'SFDIPOT',
599
- recordSession: true
600
- });
156
+ aqe/exploratory/
157
+ ├── sessions/* - Session notes and findings
158
+ ├── charters/* - Reusable charter templates
159
+ ├── bug-clusters/* - Historical bug patterns
160
+ └── heuristic-results/* - What heuristics revealed
601
161
  ```
602
162
 
603
- ### Exploration-Generated Test Cases
604
-
605
- Agents learn from human exploration sessions:
163
+ ### Fleet Coordination
606
164
  ```typescript
607
- // Human explores and finds pattern
608
- // Session notes: "Payment fails when card expires during checkout"
609
-
610
- // Agent converts to automated test
611
- await qe-test-generator.generateFromSession({
612
- sessionNotes: './sessions/payment-exploration-2025-10-20.md',
613
- pattern: 'timing-related-errors',
614
- priority: 'high'
165
+ const exploratoryFleet = await FleetManager.coordinate({
166
+ strategy: 'exploratory-testing',
167
+ agents: [
168
+ 'qe-flaky-test-hunter', // Pattern recognition
169
+ 'qe-visual-tester', // Visual anomalies
170
+ 'qe-quality-analyzer' // Risk assessment
171
+ ],
172
+ topology: 'mesh'
615
173
  });
616
- // → Creates automated regression test for timing issue
617
174
  ```
618
175
 
619
- ### Agent-Human Pairing for Exploration
176
+ ---
620
177
 
621
- ```typescript
622
- // Collaborative exploration
623
- const session = await agent.startExplorationSession({
624
- charter: 'Explore checkout edge cases',
625
- humanRole: 'navigator', // Human directs, agent executes
626
- agentRole: 'driver'
627
- });
178
+ ## Pairing Patterns
628
179
 
629
- // Agent executes while human observes and directs
630
- await session.explore();
631
- // Agent logs all actions, human spots patterns
632
- ```
180
+ | Pattern | Human Role | Agent Role |
181
+ |---------|------------|------------|
182
+ | Driver-Navigator | Navigate strategy | Execute variations |
183
+ | Strong-Style | Dictate actions | Record findings |
184
+ | Ping-Pong | Observe one area | Explore another |
633
185
 
634
186
  ---
635
187
 
636
188
  ## Related Skills
637
-
638
- **Core Quality Practices:**
639
- - [agentic-quality-engineering](../agentic-quality-engineering/) - Using agents for exploration
640
- - [context-driven-testing](../context-driven-testing/) - Adapt exploration to context
641
- - [risk-based-testing](../risk-based-testing/) - Focus exploration on high-risk areas
642
-
643
- **Testing Approaches:**
644
- - [api-testing-patterns](../api-testing-patterns/) - Exploratory API testing
645
- - [security-testing](../security-testing/) - Security-focused tours
646
- - [performance-testing](../performance-testing/) - Performance exploration
647
-
648
- **Development Practices:**
649
- - [xp-practices](../xp-practices/) - Ensemble exploration sessions
650
- - [bug-reporting-excellence](../bug-reporting-excellence/) - Document findings effectively
189
+ - [context-driven-testing](../context-driven-testing/) - RST foundations
190
+ - [risk-based-testing](../risk-based-testing/) - Focus exploration on risk
191
+ - [agentic-quality-engineering](../agentic-quality-engineering/) - Agent coordination
651
192
 
652
193
  ---
653
194
 
654
195
  ## Remember
655
196
 
656
- Exploratory testing is not:
657
- - Random clicking
658
- - Unstructured chaos
659
- - What you do when lazy
660
-
661
- Exploratory testing IS:
662
- - Skilled investigation
663
- - Structured thinking
664
- - Critical analysis
665
- - Creative test design
666
- - Continuous learning
197
+ **Exploratory testing = simultaneous learning, test design, and test execution.**
667
198
 
668
- **Balance automation and exploration. Neither replaces the other.**
199
+ Not random clicking. Structured, skilled investigation guided by heuristics and oracles. Document discoveries in real-time. Pair testing amplifies findings.
669
200
 
670
- **With Agents**: Agents handle repetitive exploration patterns, humans focus on creative, context-driven investigation. Both amplify each other.
201
+ **With Agents:** Agents generate variations, recognize patterns, and maintain session notes while humans apply judgment and intuition. Combine agent thoroughness with human insight.