Tôi đang nghĩ đến việc tự động hóa các thử nghiệm hiệu năng, giống như cách chúng ta hiện có với các bài kiểm tra đơn vị.Làm thế nào để tự động hóa các bài kiểm tra hiệu năng và tích hợp với CI?
Tôi biết cách chạy thử nghiệm hiệu suất bằng các công cụ như jMeter hoặc bằng cách viết mã của riêng tôi để kích hoạt các phần cụ thể của ứng dụng. Tôi biết cách sử dụng thời gian, jvisualvm, nmon hoặc những người khác để thu thập thông tin về các tài nguyên đang được sử dụng.
Tôi muốn tiếp tục và viết kiểm tra hiệu suất, điều đó sẽ thất bại nếu nó vượt qua các dòng nhất định (thời gian thực hiện, bộ nhớ hoặc CPU đã tiêu thụ ...). Sau đó tôi sẽ có máy chủ CI của tôi (Jenkins) chạy thử nghiệm thường xuyên để đảm bảo hiệu suất vẫn tốt. Điều này phức tạp bởi vì hiệu suất phụ thuộc vào phần cứng, và theo cách hiện tại tôi làm điều đó, nó đòi hỏi con người phải giải thích kết quả để quyết định xem điều này có thoả mãn hay không.
Bạn có biết bất kỳ công cụ hoặc khung công tác nào (nếu có thể dựa trên Java) giúp tự động hóa các thử nghiệm hiệu suất theo cách đó không? Nếu không, bạn có một số thực hành tốt để tư vấn?
Cảm ơn.
nơi bạn muốn đặt cảm biến của mình ... Máy chủ hoặc Máy khách. Dù bằng cách nào bạn cũng phải đặt mục tiêu cụ thể của mình để đạt được trong bài kiểm tra. Nếu bạn làm cho kết quả thử nghiệm của bạn có thể diễn giải như thời gian phản hồi, bạn có thể dễ dàng quyết định xem chúng có vượt qua hay không tự động ... vui lòng viết mã – jpse
Cả hai và đôi khi cả hai cùng một lúc. Ví dụ, tôi có một trường hợp mà chúng ta có một máy khách Windows giao tiếp với máy chủ. Tôi muốn đảm bảo rằng nó không đặt quá nhiều tải trên máy chủ. Vì vậy, điều đó sẽ ngụ ý bắt đầu nhiều trường hợp của máy khách và đo lường các thứ bên máy chủ như mức tiêu thụ CPU, bộ nhớ ... –