Trong tuần qua tôi đã tạo ra hai lớp mà nhóm của tôi đã bày tỏ một số lo ngại về hiệu suất của họ. Để đánh giá mã của tôi, tôi đã viết một số bài kiểm tra JUnit đơn giản thực hiện các lớp này bằng cách xây dựng các bộ dữ liệu thử nghiệm phong phú, sau đó cho dữ liệu đó thông qua các phương thức có liên quan cho hàng nghìn lần lặp. Tôi ghi lại thời gian chạy của mỗi lần lặp lại sau đó ghi lại thời gian cao, thấp và trung bình bằng cách sử dụng vòng lặp và System.nanoTime()
. Cuối cùng tôi đã có JUnit khẳng định rằng thời gian cao và trung bình nằm trong giới hạn chấp nhận được. Cách tiếp cận thử nghiệm này đã giúp nhóm của tôi tự tin vào mã này.JUnit là công cụ thích hợp để viết các bài kiểm tra hiệu suất?
JUnit có đúng công cụ để kiểm tra hiệu suất theo cách này không? Có công cụ tốt hơn để kiểm tra hiệu suất ở cấp độ đơn vị (phương pháp và lớp) không?
Tôi chấp nhận điều này vì tôi và nhóm của tôi có mối quan hệ mạnh mẽ đối với việc tích hợp JUnit với các tùy chọn này. @Pangea đã có một câu trả lời tuyệt vời cho điểm chuẩn w/o hội nhập Junit. – Freiheit
Dự án của chúng tôi đã triển khai JUnit cho tất cả các bài kiểm tra đơn vị của chúng tôi. Mở rộng chúng thành thử nghiệm hiệu suất với khung công tác JUnitPerf rất dễ dàng và có ý nghĩa. –
Tuyệt vời, vui mừng câu trả lời này vẫn hữu ích :) – kostja