Viết bình luận tài liệu java cho các trường hợp thử nghiệm đơn vị


11

Theo tôi, các trường hợp kiểm thử đơn vị tự nó đóng vai trò là tài liệu cho mã. Công ty của tôi muốn tôi viết bình luận tài liệu java chi tiết về các trường hợp thử nghiệm đơn vị. Có cần thiết phải làm như vậy? Bạn có viết bình luận như vậy không?


giả sử mã kiểm tra được viết tốt và dễ đọc, giá trị chính của một nhận xét thuộc loại này trong mã kiểm tra là một tuyên bố về ý định .. Điều đó có thể rất có giá trị đối với người đánh giá mã, ngay cả chính bạn trong một năm, vì nó cho phép bạn để đánh giá mã được viết là làm những gì nó phải làm, hoặc kiểm tra những gì nó được yêu cầu kiểm tra. Thứ hai, bạn có thể sử dụng các hệ thống như JAVADOC hoặc thậm chí là một tập lệnh đơn giản để cạo các tên kiểm tra và nhận xét từ mã để tạo ra một chút tài liệu về những bài kiểm tra bạn có và những gì chúng đang làm.
Chuck van der Linden

Câu trả lời:


8

Những gì tôi làm là JAVADOC-bình luận:

  • lớp, cho biết lớp nào là đơn vị được kiểm tra (mặc dù tôi nên rõ ràng vì thực tiễn tốt nhất về chủ đề đó cho thấy tên của trường hợp kiểm thử phải là tên của lớp + "Test" hoặc + "TestCase"). Điều này được thực hiện bằng cách sử dụng nhận xét JAVADOC {@link XXXClass}

  • các phương thức, cho biết phương thức nào được kiểm tra ({@link XXXClass # method1}). Đôi khi tôi cần phải có nhiều phương thức kiểm tra cho một phương thức của một lớp để kiểm tra đúng tất cả các đường dẫn. Khi nó xảy ra, tôi viết thêm một dòng ghi rõ con đường tôi đang kiểm tra bên trong (nhưng tôi không bao giờ đi lạc khỏi quy ước một dòng của mình)

Ngoài ra, không có bình luận nào khác. Để thu hút sự chú ý của họ ở nơi khác, có lẽ bạn có thể sử dụng một cái gì đó như Cobertura để tạo ra đồ họa bao phủ mã đẹp và làm cho họ hài lòng theo cách đó :-)

Lưu ý thêm: Tôi đang đề cập đến các trường hợp thử nghiệm đơn vị, nếu chúng ta đang nói về các trường hợp thử nghiệm tích hợp, thì một hoặc hai dòng nữa để giải thích những gì đang diễn ra có thể thực sự cần thiết ...


1

Yêu cầu về tài liệu cho bất kỳ mã nào được trình bày khá đầy đủ trong các câu trả lời cho câu hỏi này: Sếp của tôi muốn có một lời giải thích bằng tiếng Anh từng dòng về mã của chúng tôi

Như một bản tóm tắt các câu trả lời bạn sẽ thấy ở đó, "Nó phụ thuộc vào tình huống của bạn". Có những trường hợp hợp lý (và được khuyến khích), và những trường hợp khác là lãng phí thời gian của bạn.


0

Nhận xét Javadoc có thể được trích xuất và định dạng trong một tài liệu tham khảo riêng, các bài kiểm tra đơn vị không thể. Ngoài ra, hãy nhớ rằng những gì bạn viết bằng từ có thể khác với mã thực tế và thông thường bạn đang mô tả bằng từ ngữ hành vi dự kiến ​​thực tế. Một trong những cách để tìm lỗi là so sánh tài liệu với mã thực tế, nếu chúng không khớp - đó là một lỗi (trong cả hai và đôi khi - cả hai).

Kiểm tra đơn vị là để thử nghiệm, không phải cho tài liệu. Sử dụng thử nghiệm đơn vị làm tài liệu là sai và không nên được thực hiện.


2
Tôi tìm thấy một bộ bài kiểm tra đơn vị rất hữu ích trong việc viết mã tài liệu. Họ cung cấp một tài liệu tham khảo thực hiện trên cách mã của một ai đó ought được sử dụng, cùng với các bằng chứng cho thấy các cư xử mã đúng khi được sử dụng theo cách đó.
Bill Michell

@Bill - không có tranh luận về điều đó, nó hữu ích. Nó không thay thế tài liệu thích hợp.
littleadv

Phụ thuộc vào đối tượng cho tài liệu của bạn - nhưng trong một số trường hợp, bạn chắc chắn là chính xác.
Bill Michell

1
Các bài kiểm tra đơn vị lý tưởng không phải là tài liệu duy nhất của một hệ thống - nhưng trong thế giới thực, 9 dự án trong số 10 dự án đang làm việc với mã kế thừa, nơi nó có thể được coi là may mắn khi có bất kỳ tài liệu nào. Và trong trường hợp này, tôi thích một tập hợp tốt các bài kiểm tra đơn vị chạy và vượt qua một loạt các tài liệu có thể hoàn toàn không đồng bộ với mã thực tế. (Vâng, ngay cả Javadoc cũng có thể.)
Péter Török

@ PéterTörök Yeah ... Tôi đã chuyển giữa một số chủ nhân khác nhau, một số công ty rất nổi tiếng. Rất nhiều mã di sản. Các bài kiểm tra đơn vị duy nhất từng có - những người tôi đã viết. Vì vậy, bạn đã rất rất may mắn. Đừng cho rằng những gì bạn thấy là những gì xảy ra ở mọi nơi. Và ngay cả khi bạn có một bộ bài kiểm tra đơn vị ... Ai nói rằng chúng đúng? Ai nói rằng họ bao gồm những gì họ nên? Ai nói rằng kết quả mong đợi là những gì họ đang có? Tại sao bạn cho rằng các bài kiểm tra đơn vị không đồng bộ? Chỉ vì họ "vượt qua"? Vô lý.
littleadv
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.