Part 02 · Testing & Code Quality · 2.1

Kiến trúc kiểm thử và hệ thống chất lượng

Thiết kế test suite như một hệ thống phản hồi: từ risk và boundary, qua test runtime và infrastructure, đến quality gate cùng vận hành CI.


Phương pháp: mỗi chương giải thích mental model trước API, sau đó phân tích lifecycle, failure mode, production caveat và đặt nguồn chính thức ngay tại nội dung liên quan.
01

Test Strategy & Boundaries

Risk model, test portfolio, feedback loop, determinism và testability.

02

JUnit Platform & Jupiter

Discovery, execution tree, lifecycle, parameterized test, extension và parallelism.

03

Test Design & Fixtures

Observable behavior, assertion, fixture, time, randomness và data builders.

04

Mockito & Test Doubles

Mock boundary, stubbing, verification, strictness, spy và over-mocking.

05

Spring Testing

TestContext, context cache, slices, MockMvc, full context và transaction test.

06

Testcontainers

Container lifecycle, readiness, networking, data isolation và CI operations.

07

Transaction & Concurrency

Commit visibility, isolation, locking, deterministic scheduling và invariants.

08

Messaging, Contract & E2E

Delivery semantics, idempotency, retry/DLQ, compatibility và critical journeys.

09

Build & Quality Gates

Maven/Gradle, coverage, mutation, static/dependency analysis và reproducibility.

10

Flaky Test Operations & Review

Failure taxonomy, suite observability, quarantine, CI scale, Git và review.