Testing framework là các công cụ cung cấp cấu trúc và tiện ích để viết và chạy test — tổ chức test, assertion, chạy, báo cáo, và hơn thế. Mọi ngôn ngữ đều có các framework phổ biến (Jest, JUnit, pytest, v.v.). Chúng làm cho testing trở nên thực tế và chuẩn hóa.
Testing framework cung cấp gì
✓ CẤU TRÚC TEST — định nghĩa test và nhóm chúng (test/it, describe/suite)
✓ ASSERTION — kiểm tra kết quả mong đợi (expect, assert) với các matcher hữu ích
✓ TEST RUNNER — khám phá, chạy tất cả test, và báo cáo kết quả pass/fail
✓ SETUP/TEARDOWN — chạy code trước/sau test (beforeEach, afterEach) cho setup dùng chung
✓ MOCKING — tạo test double (mock, stub, spy) cho dependency
✓ BÁO CÁO — output rõ ràng, chi tiết failure, tích hợp coverage
