test-first

安装量: 46
排名: #16265

安装

npx skills add https://github.com/s-hiraoku/synapse-a2a --skill test-first
Test-First Development Skill
Test-First Development (TDD) ensures that code is written to satisfy specific, predefined requirements, leading to higher quality and better design.
TDD Workflow
Red
Write a failing test for a small piece of functionality.
Green
Write the minimum amount of code required to make the test pass.
Refactor
Clean up the code while ensuring the tests remain green.
Test Design Principles
1. Comprehensive Coverage
Normal Cases
Test the expected "happy path" behavior.
Boundary Values
Test inputs at the edges of valid ranges (e.g., 0, max_int, empty strings).
Edge Cases
Test unusual or extreme conditions (e.g., network timeout, disk full, null values).
Error Handling
Verify that the system fails gracefully and returns appropriate error messages.
2. Structure (Arrange-Act-Assert)
Follow the AAA pattern for clear and maintainable tests:
Arrange
Set up the necessary preconditions and inputs.
Act
Execute the function or method being tested.
Assert
Verify that the outcome matches the expectation.
Best Practices
One Assertion per Test
Aim to test a single concept per test case.
Descriptive Naming
Name tests clearly (e.g.,
test_should_reject_invalid_api_key
).
Independence
Ensure tests do not depend on each other or on a specific execution order.
Fast Execution
Keep unit tests fast to encourage frequent execution.
返回排行榜