You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+6-5Lines changed: 6 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -80,13 +80,14 @@ For changes that fix broken code or add small changes within a component:
80
80
81
81
## Testing Requirements
82
82
83
-
We use three tiers of testing:
83
+
We use four tiers of testing:
84
84
85
-
1.**Unit tests**: Fast verification of code parts, testing different arguments
86
-
2.**Integration tests**: Testing protocols between components and built artifacts
87
-
3.**End-to-end (e2e) tests**: Whole system testing including benchmarking
85
+
1.**Unit tests**: Fast verification of code parts, testing different arguments (`make test`)
86
+
2.**Regression tests**: API schema compatibility (golden-file round-trips) and serialization guards (`make test-regression`)
87
+
3.**Integration tests**: Feature-level validation through the real HTTP stack with in-memory backends, plus component integration with external services — tests that require external services skip gracefully when unavailable (`make test-integration`)
88
+
4.**End-to-end (e2e) tests**: Whole system testing including benchmarking against a live deployment (`make test-e2e`)
88
89
89
-
Strong e2e coverage is required for deployed systems to prevent performance regression. Appropriate test coverage is an important part of code review.
90
+
Integration tests run in CI on every PR alongside unit tests. Tests that require external infrastructure (Docker, S3) skip gracefully when those services are unavailable. Strong e2e coverage is required for deployed systems to prevent performance regression. Appropriate test coverage is an important part of code review.
0 commit comments