Trước tiên, bạn cần một khung kiểm tra đơn vị. Trước đây tôi đã từng sử dụng UnitTest ++ và Google Test . Cái trước rất nhẹ và cái sau thì nổi bật hơn nhưng có phần cồng kềnh hơn. Nó tích hợp tốt với Google Mock nếu bạn cần thứ đó. Tất nhiên có nhiều tùy chọn khác: xem danh sách này (của tác giả cuối cùng của UnitTest ++) và Wikipedia chẳng hạn.
Kiểm thử đơn vị là về việc viết các thử nghiệm tập trung để nhấn mạnh các bit mã độc lập ("đơn vị") bị cô lập cụ thể theo các kịch bản khác nhau. Mặc dù trong một số trường hợp, bạn có thể kiểm tra mọi thứ, nhưng thường không thực tế để đạt được phạm vi bao phủ 100% và đặc biệt là trong các trò chơi, có thể khá khó khăn - không thể tranh cãi liệu việc kiểm tra đơn vị đầu ra của trình kết xuất của bạn có ý nghĩa, hữu ích hay không một bài kiểm tra đơn vị "thật" bất kể
Điều quan trọng cần nhớ là mọi thử nghiệm (tự động) đều tốt hơn so với không thử nghiệm (tự động). Vì vậy, bạn không nên nhấn mạnh quá nhiều vào thực tế rằng các bài kiểm tra của bạn không phải là "bài kiểm tra đơn vị thực sự" và tự hào rằng bạn chỉ đơn giản là có bài kiểm tra. Các khung kiểm tra đơn vị thường hữu ích cho việc xây dựng các thử nghiệm lỏng lẻo hơn, "không phải đơn vị" cũng vì chúng bao gồm chức năng cho các thử nghiệm đóng gói và báo cáo các lỗi không thống nhất.
Tôi sẽ khuyến khích bạn phục hồi các thử nghiệm cũ của mình và xây dựng chúng thành một dự án thử nghiệm bằng một trong các khung có sẵn - thứ gì đó bạn có thể dễ dàng chạy theo thời gian (hoặc tự động như một phần của bản phát hành hoặc tích hợp) chạy tất cả bài kiểm tra của bạn. Viết các bài kiểm tra mới cho các đoạn mã vì rõ ràng chúng sẽ hữu ích cho bạn, ví dụ nếu bạn phát hiện ra một lỗi tinh vi mà bạn có thể đã phát hiện với một bài kiểm tra, bạn có thể thêm một bài kiểm tra để nắm bắt bất kỳ hồi quy nào bạn có thể thực hiện trong tương lai.
Bạn có thể sẽ thấy rằng phần lớn là mã tiện ích cấp thấp hơn của bạn có thể tuân theo thử nghiệm đơn vị, trong các trò chơi. Điều đó tốt - đó là mã nền tảng có thể làm xáo trộn rất nhiều lớp cao hơn nếu nó bị phá vỡ.
Bạn sẽ không đến luyện ngục của lập trình viên vì không có bài kiểm tra cho mọi chức năng nhỏ và cổng logic trong cơ sở mã của bạn, vì vậy đừng dành nhiều thời gian hơn bạn cần để viết bài kiểm tra. Nếu bạn phải suy nghĩ nhiều hơn hoặc dành nhiều thời gian hơn để viết các bài kiểm tra cho một mô-đun so với việc bạn đưa tác giả vào mô-đun ngay từ đầu, bạn có thể sẽ lãng phí thời gian. Kiểm thử đơn vị - kiểm tra nói chung - là một công cụ bạn học cách sử dụng phù hợp để giúp bạn, không phải là việc vặt bạn phải thực hiện cho mọi thứ.