qe-test-idea-rewriting
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinesename: test-idea-rewriting description: "Transform passive 'Verify X' test descriptions into active, observable test actions. Use when test ideas lack specificity, use vague language, or fail quality validation. Converts to action-verb format for clearer, more testable descriptions." category: test-design priority: medium tokenEstimate: 800 agents: [qe-test-idea-rewriter] implementation_status: optimized optimization_version: 1.0 last_optimized: 2026-01-17 dependencies: [] quick_reference_card: true tags: [test-ideas, rewriting, action-verbs, quality, transformation]
name: test-idea-rewriting description: "将被动的“Verify X”测试描述转换为主动、可观察的测试动作。适用于测试用例不够具体、语言模糊或未通过质量验证的场景。将其转换为动作动词格式,使描述更清晰、更具可测试性。" category: test-design priority: medium tokenEstimate: 800 agents: [qe-test-idea-rewriter] implementation_status: optimized optimization_version: 1.0 last_optimized: 2026-01-17 dependencies: [] quick_reference_card: true tags: [test-ideas, rewriting, action-verbs, quality, transformation]
Test Idea Rewriting
测试用例改写
<default_to_action>
When transforming test ideas:
- DETECT all "Verify X" patterns via regex
- IDENTIFY appropriate action verb category
- TRANSFORM to "[ACTION] [trigger]; [OBSERVE] [result]" pattern
- PRESERVE all metadata (IDs, priorities, automation types)
- VALIDATE zero "Verify" patterns remain
- OUTPUT in same format as input
Success Criteria: returns 0 matches
</default_to_action>
/<td>Verify\s/gi<default_to_action>
转换测试用例时:
- 通过正则表达式检测所有“Verify X”模式
- 确定合适的动作动词类别
- 转换为“[动作] [触发条件]; [观察] [结果]”格式
- 保留所有元数据(ID、优先级、自动化类型)
- 验证不存在任何“Verify”模式
- 以与输入相同的格式输出
成功标准: 匹配结果为0
</default_to_action>
/<td>Verify\s/giQuick Reference Card
快速参考卡片
Transformation Pattern
转换格式
[ACTION VERB] [specific trigger]; [OUTCOME VERB] [observable result][ACTION VERB] [specific trigger]; [OUTCOME VERB] [observable result]Action Verb Quick Reference
动作动词速查
| Category | Verbs | Use When |
|---|---|---|
| Interaction | Click, Type, Submit, Navigate, Scroll | UI actions |
| Trigger | Send, Inject, Force, Simulate, Load | API/system actions |
| Measurement | Measure, Time, Count, Profile | Performance checks |
| State | Set, Configure, Enable, Disable, Toggle | Setup actions |
| Observation | Confirm, Assert, Check, Observe | Outcome verification |
| 类别 | 动词 | 使用场景 |
|---|---|---|
| 交互类 | Click, Type, Submit, Navigate, Scroll | UI操作 |
| 触发类 | Send, Inject, Force, Simulate, Load | API/系统操作 |
| 测量类 | Measure, Time, Count, Profile | 性能检查 |
| 状态类 | Set, Configure, Enable, Disable, Toggle | 配置操作 |
| 观察类 | Confirm, Assert, Check, Observe | 结果验证 |
Common Transformations
常见转换示例
| Before | After |
|---|---|
| Verify login works | Submit valid credentials; confirm session created |
| Verify API returns 200 | Send GET request; assert 200 response within 500ms |
| Verify error displays | Trigger validation error; observe error message |
| Verify data saves | Insert record; query database; confirm fields match |
| Verify performance | Execute 100 requests; measure p99 < 200ms |
| 转换前 | 转换后 |
|---|---|
| Verify login works | 提交有效凭据;确认会话已创建 |
| Verify API returns 200 | 发送GET请求;断言500ms内返回200响应 |
| Verify error displays | 触发验证错误;观察错误消息 |
| Verify data saves | 插入记录;查询数据库;确认字段匹配 |
| Verify performance | 执行100次请求;测量p99延迟<200ms |
Transformation Rules
转换规则
Pattern Detection
模式检测
regex
/<td>Verify\s/gi // HTML table cells
/^Verify\s/gim // Line starts
/"Verify\s[^"]+"/gi // Quoted stringsregex
/<td>Verify\s/gi // HTML table cells
/^Verify\s/gim // Line starts
/"Verify\s[^"]+"/gi // Quoted stringsTransformation Categories
转换分类
API/Network Tests
API/网络测试
| Input Pattern | Output Pattern |
|---|---|
| Verify API returns X | Send [METHOD] request; assert [STATUS] response |
| Verify endpoint accepts Y | Post [PAYLOAD] to endpoint; confirm [RESPONSE] |
| Verify webhook fires | Trigger [EVENT]; observe webhook received |
| 输入模式 | 输出格式 |
|---|---|
| Verify API returns X | 发送[请求方法]请求;断言[状态码]响应 |
| Verify endpoint accepts Y | 向端点提交[请求体];确认[响应结果] |
| Verify webhook fires | 触发[事件];观察webhook已接收 |
UI/UX Tests
UI/UX测试
| Input Pattern | Output Pattern |
|---|---|
| Verify button works | Click [BUTTON]; observe [EFFECT] |
| Verify form submits | Fill [FIELDS]; submit form; confirm [RESULT] |
| Verify navigation works | Click [LINK]; observe [PAGE] loads |
| 输入模式 | 输出格式 |
|---|---|
| Verify button works | 点击[按钮];观察[效果] |
| Verify form submits | 填写[字段];提交表单;确认[结果] |
| Verify navigation works | 点击[链接];观察[页面]加载完成 |
Data Tests
数据测试
| Input Pattern | Output Pattern |
|---|---|
| Verify data saves | Insert [RECORD]; query; confirm [MATCH] |
| Verify validation works | Enter [INVALID]; observe [ERROR] |
| Verify format accepted | Submit [FORMAT]; confirm [PROCESSED] |
| 输入模式 | 输出格式 |
|---|---|
| Verify data saves | 插入[记录];查询;确认[匹配] |
| Verify validation works | 输入[无效内容];观察[错误提示] |
| Verify format accepted | 提交[格式数据];确认[已处理] |
Performance Tests
性能测试
| Input Pattern | Output Pattern |
|---|---|
| Verify performance is good | Execute [LOAD]; measure [METRIC] < [THRESHOLD] |
| Verify scalability | Increase [USERS] to [N]; monitor [RESOURCE] |
| Verify timeout works | Inject [DELAY]; confirm timeout after [TIME] |
| 输入模式 | 输出格式 |
|---|---|
| Verify performance is good | 执行[负载];测量[指标]<[阈值] |
| Verify scalability | 将[用户数]增加至[N];监控[资源] |
| Verify timeout works | 注入[延迟];确认在[指定时间]后超时 |
Action Verb Reference
动作动词参考
Interaction Verbs
交互类动词
| Verb | When to Use | Example |
|---|---|---|
| Click | UI element interaction | Click "Submit" button |
| Type | Text entry | Type "user@example.com" |
| Submit | Form completion | Submit registration form |
| Navigate | Page changes | Navigate to /settings |
| Scroll | Viewport movement | Scroll to page bottom |
| Drag | Drag-and-drop | Drag file to upload zone |
| Hover | Mouse positioning | Hover over tooltip trigger |
| Select | Dropdown/checkbox | Select "Admin" from role dropdown |
| 动词 | 使用场景 | 示例 |
|---|---|---|
| Click | UI元素交互 | 点击“Submit”按钮 |
| Type | 文本输入 | 输入“user@example.com” |
| Submit | 表单提交 | 提交注册表单 |
| Navigate | 页面跳转 | 导航至/settings |
| Scroll | 视口滚动 | 滚动至页面底部 |
| Drag | 拖放操作 | 将文件拖至上传区域 |
| Hover | 鼠标悬停 | 悬停在提示框触发元素上 |
| Select | 下拉框/复选框选择 | 从角色下拉框中选择“Admin” |
Trigger Verbs
触发类动词
| Verb | When to Use | Example |
|---|---|---|
| Send | HTTP requests | Send POST to /api/orders |
| Inject | Fault injection | Inject 500ms latency |
| Force | State manipulation | Force offline mode |
| Simulate | Event generation | Simulate device rotation |
| Load | Resource loading | Load 50MB test file |
| Execute | Script/command | Execute database migration |
| Invoke | Function/webhook | Invoke payment callback |
| Trigger | Event firing | Trigger scheduled job |
| 动词 | 使用场景 | 示例 |
|---|---|---|
| Send | HTTP请求发送 | 向/api/orders发送POST请求 |
| Inject | 故障注入 | 注入500ms延迟 |
| Force | 状态强制修改 | 强制切换为离线模式 |
| Simulate | 事件模拟 | 模拟设备旋转 |
| Load | 资源加载 | 加载50MB测试文件 |
| Execute | 脚本/命令执行 | 执行数据库迁移 |
| Invoke | 函数/webhook调用 | 调用支付回调 |
| Trigger | 事件触发 | 触发定时任务 |
Measurement Verbs
测量类动词
| Verb | When to Use | Example |
|---|---|---|
| Measure | Quantitative check | Measure response time |
| Time | Duration tracking | Time page render |
| Count | Quantity check | Count search results |
| Profile | Resource analysis | Profile CPU usage |
| Benchmark | Comparison | Benchmark against v1.0 |
| Capture | State recording | Capture network traffic |
| Monitor | Ongoing observation | Monitor memory for 5 minutes |
| 动词 | 使用场景 | 示例 |
|---|---|---|
| Measure | 定量检查 | 测量响应时间 |
| Time | 时长跟踪 | 计时页面渲染时间 |
| Count | 数量检查 | 统计搜索结果数量 |
| Profile | 资源分析 | 分析CPU使用率 |
| Benchmark | 性能对比 | 与v1.0版本进行基准对比 |
| Capture | 状态记录 | 捕获网络流量 |
| Monitor | 持续观察 | 监控内存使用5分钟 |
Observation Verbs
观察类动词
| Verb | When to Use | Example |
|---|---|---|
| Confirm | Boolean check | Confirm user is logged in |
| Assert | Value comparison | Assert total equals $99.99 |
| Check | State verification | Check cart has 3 items |
| Observe | Behavior watching | Observe spinner appears |
| Validate | Rule compliance | Validate email format |
| Expect | Predicted outcome | Expect redirect to /home |
| Verify (avoid) | Use alternatives | Use confirm/assert instead |
| 动词 | 使用场景 | 示例 |
|---|---|---|
| Confirm | 布尔值检查 | 确认用户已登录 |
| Assert | 值对比验证 | 断言总金额为$99.99 |
| Check | 状态验证 | 检查购物车中有3件商品 |
| Observe | 行为观察 | 观察加载动画出现 |
| Validate | 规则合规性验证 | 验证邮箱格式 |
| Expect | 预期结果判断 | 预期跳转至/home |
| Verify (avoid) | 避免使用 | 改用confirm/assert |
Quality Validation
质量验证
Pre-Transform Checks
转换前检查
- Count "Verify" patterns in input
- Identify context for each pattern
- Map to appropriate action verb category
- 统计输入中的“Verify”模式数量
- 确定每个模式的上下文
- 映射到合适的动作动词类别
Post-Transform Checks
转换后检查
- Regex validation: zero "Verify" matches
- Every test idea starts with action verb
- Each test includes observable outcome
- All metadata preserved unchanged
- 正则验证:无“Verify”匹配项
- 每个测试用例均以动作动词开头
- 每个测试包含可观察的结果
- 所有元数据保持不变
Validation Regex
验证正则表达式
javascript
// Must return 0 matches for success
const verifyPattern = /<td>Verify\s/gi;
const matches = content.match(verifyPattern);
if (matches && matches.length > 0) {
throw new Error(`${matches.length} "Verify" patterns remain`);
}javascript
// Must return 0 matches for success
const verifyPattern = /<td>Verify\s/gi;
const matches = content.match(verifyPattern);
if (matches && matches.length > 0) {
throw new Error(`${matches.length} "Verify" patterns remain`);
}Agent Integration
Agent集成
typescript
// Single file transformation
await Task("Rewrite Test Ideas", {
inputFile: "assessment.html",
outputFile: "assessment-rewritten.html",
preserveFormatting: true
}, "qe-test-idea-rewriter");
// Batch transformation
await Task("Batch Rewrite", {
inputDir: "./assessments/",
outputDir: "./assessments-clean/",
pattern: "*.html"
}, "qe-test-idea-rewriter");typescript
// Single file transformation
await Task("Rewrite Test Ideas", {
inputFile: "assessment.html",
outputFile: "assessment-rewritten.html",
preserveFormatting: true
}, "qe-test-idea-rewriter");
// Batch transformation
await Task("Batch Rewrite", {
inputDir: "./assessments/",
outputDir: "./assessments-clean/",
pattern: "*.html"
}, "qe-test-idea-rewriter");Memory Namespace
内存命名空间
aqe/rewriting/
├── transformations/* - Transformation logs
├── patterns/* - Learned patterns
└── vocabulary/* - Custom verb mappingsaqe/rewriting/
├── transformations/* - Transformation logs
├── patterns/* - Learned patterns
└── vocabulary/* - Custom verb mappingsRelated Skills
相关技能
- sfdipot-product-factors - Assessment generation
- test-design-techniques - Proper test structuring
- brutal-honesty-review - Quality validation
- sfdipot-product-factors - 评估生成
- test-design-techniques - 测试用例合理结构化
- brutal-honesty-review - 质量验证
Remember
注意事项
Every test idea should be actionable. "Verify X works" tells you nothing about HOW to test. "[Action] X; [Observe] Y" gives clear steps and expected outcomes. Transform passive descriptions into active, observable tests.
每个测试用例都应具备可执行性。 “Verify X works”并未说明测试的具体方法。“[动作] X;[观察] Y”则提供了清晰的步骤和预期结果。请将被动描述转换为主动、可观察的测试用例。