mcpField
Q
qe-test-idea-rewriting

qe-test-idea-rewriting

github.com/proffesor-for-testing测试与质量51981 次安装今天更新
代码仓库

关于 qe-test-idea-rewriting

用于将测试想法改写为可执行步骤和可观察结果的 Skill,面向 QA 工作,可保留元数据与输入格式,并检查是否仍有“Verify”表述。

主要功能

  1. 01检测“Verify”模式
  2. 02按场景选择动作动词
  3. 03改写为操作与结果
  4. 04保留元数据和格式
  5. 05检查是否移除“Verify”

适用场景

  1. 01将 UI 测试描述改为操作步骤
  2. 02明确 API 和网络测试用例
  3. 03将性能检查改为可测量项

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/proffesor-for-testing/agentic-qe --skill qe-test-idea-rewriting

安装后在 Claude Code 中输入/qe-test-idea-rewriting确认已加载。

详细介绍

测试想法改写

<default_to_action> 转换测试想法时:

  1. 使用正则表达式检测所有「Verify X」模式
  2. 确定适当的动作动词类别
  3. 转换为「[ACTION] [trigger]; [OBSERVE] [result]」模式
  4. 保留所有元数据(ID、优先级、自动化类型)
  5. 验证不再存在任何「Verify」模式
  6. 以与输入相同的格式输出

成功标准: /<td>Verify\s/gi 返回 0 个匹配项 </default_to_action>

快速参考卡

转换模式
[ACTION VERB] [specific trigger]; [OUTCOME VERB] [observable result]
动作动词速查
类别动词使用场景
交互Click、Type、Submit、Navigate、ScrollUI 操作
触发Send、Inject、Force、Simulate、LoadAPI/系统操作
测量Measure、Time、Count、Profile性能检查
状态Set、Configure、Enable、Disable、Toggle设置操作
观察Confirm、Assert、Check、Observe结果验证
常见转换
转换前转换后
验证登录有效提交有效凭据;确认已创建会话
验证 API 返回 200发送 GET 请求;断言在 500ms 内收到 200 响应
验证错误是否显示触发验证错误;观察错误消息
验证数据是否保存插入记录;查询数据库;确认字段匹配
验证性能执行 100 个请求;测量 p99 < 200ms

转换规则

模式检测
/<td>Verify\s/gi     // HTML table cells
/^Verify\s/gim       // Line starts
/"Verify\s[^"]+"/gi  // Quoted strings
转换类别
API/网络测试
输入模式输出模式
验证 API 是否返回 X发送 [METHOD] 请求;断言响应状态为 [STATUS]
验证端点是否接受 Y将 [PAYLOAD] 发布到端点;确认收到 [RESPONSE]
验证 Webhook 是否触发触发 [EVENT];观察是否收到 Webhook
UI/UX 测试
输入模式输出模式
验证按钮是否有效点击 [BUTTON];观察 [EFFECT]
验证表单是否提交填写 [FIELDS];提交表单;确认 [RESULT]
验证导航是否有效点击 [LINK];观察 [PAGE] 是否加载
数据测试
输入模式输出模式
验证数据是否保存插入 [RECORD];查询;确认 [MATCH]
验证校验是否有效输入 [INVALID];观察 [ERROR]
验证格式是否被接受提交 [FORMAT];确认已处理 [PROCESSED]
性能测试
输入模式输出模式
验证性能是否良好执行 [LOAD];测量 [METRIC] < [THRESHOLD]
验证可扩展性将 [USERS] 增加至 [N];监控 [RESOURCE]
验证超时是否有效注入 [DELAY];确认在 [TIME] 后超时

动作动词参考

交互动词
动词使用场景示例
Click与 UI 元素交互点击「Submit」按钮
Type输入文本输入「[email protected]」
Submit完成表单提交注册表单
Navigate切换页面导航至 /settings
Scroll移动视口滚动至页面底部
Drag拖放将文件拖至上传区域
Hover移动鼠标位置将鼠标悬停在工具提示触发器上
Select下拉菜单/复选框从角色下拉菜单中选择「Admin」
触发动词
动词使用场景示例
SendHTTP 请求向 /api/orders 发送 POST 请求
Inject故障注入注入 500ms 延迟
Force状态操控强制启用离线模式
Simulate生成事件模拟设备旋转
Load加载资源加载 50MB 测试文件
Execute脚本/命令执行数据库迁移
Invoke函数/Webhook调用付款回调
Trigger触发事件触发计划任务
测量类动词
动词适用场景示例
Measure定量检查Measure response time
Time时长跟踪Time page render
Count数量检查Count search results
Profile资源分析Profile CPU usage
Benchmark比较Benchmark against v1.0
Capture状态记录Capture network traffic
Monitor持续观察Monitor memory for 5 minutes
观察类动词
动词适用场景示例
Confirm布尔值检查Confirm user is logged in
Assert值比较Assert total equals $99.99
Check状态验证Check cart has 3 items
Observe行为观察Observe spinner appears
Validate规则合规性Validate email format
Expect预期结果Expect redirect to /home
Verify(避免使用)使用替代词Use confirm/assert instead

质量验证

转换前检查
  1. 统计输入中“Verify”模式的数量
  2. 确定每个模式的上下文
  3. 映射到适当的动作动词类别
转换后检查
  1. 正则表达式验证:“Verify”匹配项为零
  2. 每个测试思路都以动作动词开头
  3. 每项测试都包含可观察的结果
  4. 所有元数据均保持不变
验证正则表达式
// 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 集成

// 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");

记忆命名空间

aqe/rewriting/
├── transformations/*  - Transformation logs
├── patterns/*         - Learned patterns
└── vocabulary/*       - Custom verb mappings

相关技能


请记住

每个测试思路都应该可执行。“Verify X works”没有说明该如何测试。“[Action] X;[Observe] Y”则提供了明确的步骤和预期结果。将被动描述转换为主动且可观察的测试。

评论

支持 Markdown