exploratory-testing-advanced

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Advanced Exploratory Testing

高级探索性测试

<default_to_action> When exploring software or investigating quality risks:
  1. CREATE charter with mission, scope, and time-box (45-90 min)
  2. APPLY heuristics: SFDIPOT (quality criteria), FEW HICCUPPS (consistency oracles)
  3. EXPLORE systematically using test tours (Business District, Bad Neighborhood, Historical)
  4. DOCUMENT findings in real-time with notes, screenshots, evidence
  5. DEBRIEF: What learned? What's next? Share via agent memory
Quick Heuristic Selection:
  • What to test → SFDIPOT (Structure, Function, Data, Interfaces, Platform, Operations, Time)
  • Recognize problems → FEW HICCUPPS (Familiar, Explainable, World, History, Image, Comparable, Claims, Users, Product, Purpose, Standards)
  • Navigate app → Test Tours (12 types for different exploration strategies)
Critical Success Factors:
  • Exploration is skilled, structured thinking - not random clicking
  • Document discoveries, not pre-planned test cases
  • Pair testing reveals more than solo exploration </default_to_action>
<default_to_action> 在探索软件或排查质量风险时:
  1. 创建包含任务目标、范围和时间盒(45-90分钟)的测试章程(charter)
  2. 应用启发式方法:SFDIPOT(质量标准)、FEW HICCUPPS(一致性验证准则)
  3. 利用测试漫游(商业区、问题重灾区、历史缺陷区等)进行系统化探索
  4. 实时记录发现内容,包括笔记、截图和证据
  5. 复盘:学到了什么?下一步计划?通过Agent内存共享信息
快速启发式方法选择:
  • 测试内容方向 → SFDIPOT(结构、功能、数据、接口、平台、操作、时间)
  • 问题识别 → FEW HICCUPPS(常见问题、可解释性、现实世界、历史情况、产品形象、竞品对比、官方声明、用户预期、设计目的、开发说明、行业标准)
  • 应用导航 → 测试漫游(12种不同探索策略)
关键成功因素:
  • 探索性测试是有技巧、结构化的思考过程,而非随机点击
  • 记录发现内容,而非预先规划的测试用例
  • 结对测试比单人探索能发现更多问题 </default_to_action>

Quick Reference Card

快速参考卡片

When to Use

适用场景

  • Investigating new or changed features
  • Finding bugs automation misses
  • Learning unfamiliar systems
  • Risk discovery before test planning
  • 调研新功能或变更功能
  • 发现自动化测试遗漏的缺陷
  • 学习不熟悉的系统
  • 测试规划前的风险发现

Session Structure (SBTM)

会话结构(SBTM)

PhaseDurationActivity
Charter5 minDefine mission, scope, focus
Explore45-75 minSystematic investigation
NoteContinuousDocument findings real-time
Debrief10-15 minSummarize, prioritize, share
阶段时长活动
章程制定5分钟定义任务目标、范围、重点
探索测试45-75分钟系统化调研
记录全程实时记录发现内容
复盘10-15分钟总结、优先级排序、分享

SFDIPOT Heuristic (What to Test)

SFDIPOT启发式方法(测试内容方向)

LetterFocusExample Questions
StructureIs it properly composed?Code structure, UI layout, data schema
FunctionDoes it do what it should?Core features work correctly
DataHandles data correctly?CRUD, validation, persistence
InterfacesInteracts well?APIs, UI, integrations
PlatformWorks in environment?Browsers, OS, devices
OperationsCan be used/managed?Install, config, monitor
TimeHandles timing?Concurrency, timeouts, scheduling
字母关注重点示例问题
Structure(结构)组成是否合理?代码结构、UI布局、数据 schema
Function(功能)是否实现预期功能?核心功能是否正常工作
Data(数据)数据处理是否正确?CRUD操作、验证、持久化
Interfaces(接口)交互是否顺畅?API、UI、集成功能
Platform(平台)环境兼容性如何?浏览器、操作系统、设备
Operations(操作)能否正常使用/管理?安装、配置、监控
Time(时间)时序处理是否正确?并发、超时、调度

FEW HICCUPPS Oracle (Recognize Problems)

FEW HICCUPPS验证准则(问题识别)

Consistency WithCheck
Familiar problemsDoes this look like a known bug pattern?
ExplainableCan behavior be explained rationally?
WorldMatches real-world expectations?
HistoryConsistent with prior versions?
ImageMatches brand/product image?
ComparableSimilar to competing products?
ClaimsMatches specs/docs/marketing?
UsersMeets user expectations?
PurposeFulfills intended purpose?
StatementsMatches what devs said?
一致性对比维度检查内容
Familiar problems(常见问题)是否符合已知缺陷模式?
Explainable(可解释性)行为是否符合理性逻辑?
World(现实世界)是否符合现实预期?
History(历史情况)是否与之前版本一致?
Image(产品形象)是否符合品牌/产品定位?
Comparable(竞品对比)是否与竞品类似?
Claims(官方声明)是否与规格/文档/营销内容一致?
Users(用户预期)是否满足用户期望?
Purpose(设计目的)是否实现预期用途?
Statements(开发说明)是否与开发人员描述一致?

Test Tours (12 Types)

测试漫游(12种类型)

TourStrategy
Business DistrictCritical business flows
HistoricalWhere bugs clustered before
Bad NeighborhoodKnown problem areas
MoneyRevenue-impacting features
LandmarkNavigate by key features
IntellectualComplex, thinking-intensive features
FedExFollow data through system
Garbage CollectorCleanup and edge cases
MuseumHelp docs and examples
Rained-OutWhat happens when things fail?
Couch PotatoMinimal effort paths
Obsessive-CompulsiveRepetitive actions

漫游类型策略
商业区核心业务流程
历史缺陷区之前缺陷集中的区域
问题重灾区已知问题区域
资金流影响营收的功能
地标导航通过关键功能导航
逻辑密集区复杂、需深度思考的功能
数据流追踪跟踪数据在系统中的流转
清理与边缘场景清理操作和边缘情况
文档示例区帮助文档和示例
故障模拟故障发生时的情况?
极简操作路径最低操作成本的路径
重复操作重复性动作

Session Note Template

会话记录模板

markdown
**Charter:** Explore [area] to discover [what] focusing on [heuristic]
**Time-box:** 60 min | **Tester:** [name] | **Date:** [date]
markdown
**Charter:** Explore [area] to discover [what] focusing on [heuristic]
**Time-box:** 60 min | **Tester:** [name] | **Date:** [date]

Session Notes

Session Notes

  • [timestamp] Observation/finding
  • [timestamp] Bug: [description] - [severity]
  • [timestamp] Question: [unclear behavior]
  • [timestamp] Observation/finding
  • [timestamp] Bug: [description] - [severity]
  • [timestamp] Question: [unclear behavior]

Findings Summary

Findings Summary

  • Bugs: X (Critical: Y, Major: Z)
  • Questions: X
  • Ideas: X
  • Bugs: X (Critical: Y, Major: Z)
  • Questions: X
  • Ideas: X

Coverage

Coverage

  • Areas explored: [list]
  • Heuristics used: [SFDIPOT areas]
  • % Time on: Bug investigation 30%, Exploration 50%, Setup 20%
  • Areas explored: [list]
  • Heuristics used: [SFDIPOT areas]
  • % Time on: Bug investigation 30%, Exploration 50%, Setup 20%

Next Steps

Next Steps

  • Deep dive on [area]
  • Follow up on question about [topic]

---
  • Deep dive on [area]
  • Follow up on question about [topic]

---

Agent-Assisted Exploration

Agent辅助探索

typescript
// Collaborative exploration session
await Task("Exploratory Session", {
  charter: 'Explore checkout flow for payment edge cases',
  duration: '60min',
  heuristics: ['SFDIPOT', 'FEW_HICCUPPS'],
  tour: 'money',
  collaboration: 'human-navigator-agent-driver'
}, "qe-flaky-test-hunter");

// Agent generates test variations while human observes
await Task("Edge Case Generation", {
  area: 'payment-form',
  variations: ['boundary-values', 'invalid-inputs', 'concurrent-submits']
}, "qe-test-generator");

// Visual exploration
await Task("Visual Exploration", {
  tour: 'landmark',
  focus: 'responsive-breakpoints',
  compare: 'baseline-screenshots'
}, "qe-visual-tester");

typescript
// Collaborative exploration session
await Task("Exploratory Session", {
  charter: 'Explore checkout flow for payment edge cases',
  duration: '60min',
  heuristics: ['SFDIPOT', 'FEW_HICCUPPS'],
  tour: 'money',
  collaboration: 'human-navigator-agent-driver'
}, "qe-flaky-test-hunter");

// Agent generates test variations while human observes
await Task("Edge Case Generation", {
  area: 'payment-form',
  variations: ['boundary-values', 'invalid-inputs', 'concurrent-submits']
}, "qe-test-generator");

// Visual exploration
await Task("Visual Exploration", {
  tour: 'landmark',
  focus: 'responsive-breakpoints',
  compare: 'baseline-screenshots'
}, "qe-visual-tester");

Agent Coordination Hints

Agent协作提示

Memory Namespace

内存命名空间

aqe/exploratory/
├── sessions/*           - Session notes and findings
├── charters/*           - Reusable charter templates
├── bug-clusters/*       - Historical bug patterns
└── heuristic-results/*  - What heuristics revealed
aqe/exploratory/
├── sessions/*           - Session notes and findings
├── charters/*           - Reusable charter templates
├── bug-clusters/*       - Historical bug patterns
└── heuristic-results/*  - What heuristics revealed

Fleet Coordination

集群协作

typescript
const exploratoryFleet = await FleetManager.coordinate({
  strategy: 'exploratory-testing',
  agents: [
    'qe-flaky-test-hunter',   // Pattern recognition
    'qe-visual-tester',       // Visual anomalies
    'qe-quality-analyzer'     // Risk assessment
  ],
  topology: 'mesh'
});

typescript
const exploratoryFleet = await FleetManager.coordinate({
  strategy: 'exploratory-testing',
  agents: [
    'qe-flaky-test-hunter',   // Pattern recognition
    'qe-visual-tester',       // Visual anomalies
    'qe-quality-analyzer'     // Risk assessment
  ],
  topology: 'mesh'
});

Pairing Patterns

结对测试模式

PatternHuman RoleAgent Role
Driver-NavigatorNavigate strategyExecute variations
Strong-StyleDictate actionsRecord findings
Ping-PongObserve one areaExplore another

模式人类角色Agent角色
驾驶员-领航员制定策略方向执行变体测试
强指令模式下达操作指令记录发现内容
交替探索观察某一区域探索另一区域

Related Skills

相关技能

  • context-driven-testing - RST foundations
  • risk-based-testing - Focus exploration on risk
  • agentic-quality-engineering - Agent coordination

  • context-driven-testing - RST基础
  • risk-based-testing - 聚焦风险的探索测试
  • agentic-quality-engineering - Agent协作

Remember

注意事项

Exploratory testing = simultaneous learning, test design, and test execution.
Not random clicking. Structured, skilled investigation guided by heuristics and oracles. Document discoveries in real-time. Pair testing amplifies findings.
With Agents: Agents generate variations, recognize patterns, and maintain session notes while humans apply judgment and intuition. Combine agent thoroughness with human insight.
探索性测试 = 同时进行学习、测试设计和测试执行。
并非随机点击,而是在启发式方法和验证准则指导下的结构化、专业性调研。实时记录发现内容。结对测试能放大发现成果。
借助Agent: Agent生成测试变体、识别模式并维护会话记录,同时人类运用判断和直觉。结合Agent的全面性与人类的洞察力。