test-namer
Installation
SKILL.md
Test Namer
Write tests that describe behavior in plain English, not implementation details. Based on Vladimir Khorikov's testing principles.
Naming Guidelines
Rules
- No rigid naming policy — never use
[MethodUnderTest]_[Scenario]_[ExpectedResult]or similar templates - Describe behavior to a non-programmer familiar with the problem domain — a domain expert should understand the test name
- Separate words with underscores in function/method names (not needed in string-based test names like JS/TS)
- Do not include the SUT's method name in the test name — test behavior, not a method
- Use plain facts, not wishes — write
is_invalid, notshould_be_invalid - Use basic English grammar — articles (
a,the) improve readability - Be specific —
Delivery_with_a_past_date_is_invalidbeatsDelivery_with_invalid_date_is_invalid
Naming Progression Example
Starting from a rigid convention — progressively improve: