2013-09-24 46 views
8

Khi viết thử nghiệm, tôi thường đặt tên các mô-đun bắt đầu bằng test_ ví dụ spam.pytest_spam.py. Điều này làm cho việc tìm kiếm các bài kiểm tra dễ dàng. Khi thử nghiệm các lớp học trong một mô-đun, tôi tạo một mã số unittest.TestCase phái sinh có tên lớp tương tự, được postfixed với Test. ví dụ. Spam trở thành SpamTest (không phải TestSpam vì điều này nghe có vẻ như đó là việc triển khai thử nghiệm Spam). Sau đó, các hàm lớp được kiểm tra bởi các hàm thử nghiệm được bắt đầu bằng test_ và được postfixed với _testcondition hoặc một số postfix mô tả khác. Tôi thấy rằng điều này hoạt động rực rỡ như tên đối tượng ban đầu được bao gồm.Quy ước đặt tên thử nghiệm đơn vị Python cho các chức năng mô-đun

Sự cố xảy ra khi tôi muốn thử nghiệm chức năng cấp mô-đun. Theo cấu trúc thông thường của tôi, tôi sẽ tạo ra một dẫn xuất unittest.TestCase có cùng tên với hàm, được postfixed với Test. Vấn đề với điều này là tên lớp là lạc đà cased và tên chức năng thấp hơn cased với gạch dưới để tách các từ. Bỏ qua quy ước đặt tên some_function sẽ trở thành SomeFunctionTest. Tôi không thể không cảm thấy rằng điều này là xấu.

Điều gì sẽ phù hợp hơn? Thực hành phổ biến là gì? Có một 'tiêu chuẩn' như pep8 cho điều này? Bạn dùng gì?

+0

Thành thật? Tôi không thể nói nó quan trọng. Chỉ cần nhất quán. – Veedrac

Trả lời

3

Cách bạn đang làm đó là cách tiếp cận rõ ràng nhất - miễn là có một vị trí rõ ràng nơi mọi người mong đợi tìm các bài kiểm tra cho chức năng cấp mô-đun thì tôi nghĩ bạn tốt. Sự khác biệt về phong cách giữa tên hàm và tên lớp thử nghiệm - mặc dù một sự khó chịu - không đủ quan trọng để lo lắng.

Các vấn đề liên quan