test fixing skill
1
总安装量
0
周安装量
#45981
全站排名
安装命令
npx skills add https://github.com/chrysaliscat/designgraduation --skill Test Fixing Skill
Skill 文档
Test Fixing & Self-Healing
Methodology
When a test fails, do not just “try random things”. Follow this procedure:
1. Diagnosis
- Read the Error: Is it
Timeout,AssertionError, orReferenceError? - Check the Artifacts: Look at the Screenshot/Video/Trace at the moment of failure.
- Isolate: Can you reproduce it with
npx playwright test --project=chromium -g "test name"?
2. Root Cause Analysis
- Race Condition: Did the test assert before the UI finished animating? (Sol:
await expectauto-retries, checkawait page.waitForLoadState()). - Data Issue: Did previous tests dirty the database? (Sol: Ensure DB reset in
beforeEachor unique naming). - Selector Changed: Did a class name change? (Sol: Update locator to be resilient).
3. The Healing Loop
- Reproduce: Confirm failure locally.
- Patch: Apply fix (update locator, add wait, fix logic).
- Verify: Run test again.
- Regression: Run all tests in the file to ensure no side effects.
Common Fixes
| Error | Probable Cause | Fix |
|---|---|---|
TimeoutError: waiting for selector |
Element not in DOM | Check if conditions, ensure correct page navigation. |
received: "Loading..." expected: "Data" |
Assertion too early | Use await expect().not.toHaveText("Loading...") first. |
Element is not clickable |
Overlay/Modal blocking | Check for sticky headers or previous modals not closing. |