Individual skill
detect-test-smells
Detects test antipatterns and code smells in PHP test suites. Identifies 15 smells (Logic in Test, Mock Overuse, Fragile Tests, Mystery Guest, etc.) with fix recommendations and refactoring patterns for testability.
skills/detect-test-smells/SKILL.md
Source commit 7e1fea8899b7994073951dfd1f6a10532ddbb867
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- No
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Not checked yet
- Last checked
- Nov 5, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 106
- Repository last updated
- Aug 16, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- testing Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 3,288 bytesSKILL.mdcore · 3,288 bytesreferences/refactoring-patterns.mddoc · 5,258 bytesreferences/smell-catalog.mddoc · 9,564 bytes
Read excerpt
# Test Smell Detection
Identifies antipatterns and code smells in PHP test suites.
## 15 Test Smells
| # | Smell | Severity | Detection Pattern |
|---|-------|----------|-------------------|
| 1 | Logic in Test | High | `if/for/while/foreach` in tests |
| 2 | Mock Overuse | High | >3 mocks in single test |
| 3 | Test Interdependence | High | `static $`, `@depends` |
| 4 | Fragile Test | High | `expects(exactly)`, `at()` |
| 5 | Mystery Guest | Medium | `file_get_contents`, `getenv` |
| 6 | Eager Test | Medium | Multiple unrelated assertions |