2012-04-17 35 views
10

Tôi có một thử nghiệm nơi người dùng sẽ đăng nhập và nhập từ khóa tìm kiếm vào trường tìm kiếm và sẽ nhận được kết quả. Cuối cùng đăng xuất.Cách tạo Tải người dùng đồng thời trong Jmeter

Bây giờ tôi muốn thử nghiệm đồng thời sử dụng Jmeter. Vì vậy, đây là những gì tôi đã đưa ra.

Test plan 
    Thread group 
    + Login request 
    + Synchronizing Controller 
    + Search string 
    + Synchronizing Controller 
    + Logout 

Tôi đã thêm 10 số chủ đề. Tôi đã thêm 5 trong Đồng bộ hóa bộ điều khiển. Vì vậy, khi tôi chạy thử nghiệm, tôi sẽ nhận được đồng thời 5 người dùng? Phần còn lại 5 người dùng sẽ là người dùng đồng thời?

Ngoài ra tôi có yêu cầu phụ thuộc khi tải trang đăng nhập. Vì vậy, để đạt được đồng thời khi đăng nhập, tôi đã thêm tất cả yêu cầu trong bộ điều khiển giao dịch và thêm Bộ điều khiển Đồng bộ hóa làm con cho bộ điều khiển giao dịch. Vui lòng cho tôi biết nếu tôi làm đúng.

Ngoài ra vui lòng cho tôi biết nếu có cách khác để đạt được đồng thời cho hành động cụ thể (ví dụ: 5 người dùng nhấn nút đăng nhập cùng một lúc).

Trả lời

16

Trước hết, bạn nên cố gắng phân biệt giữa 'đồng thời' và 'đồng thời'. Chúng thường là những thuật ngữ rất giống nhau nhưng trong thử nghiệm tải chúng có ý nghĩa khác nhau. Đồng thời có nghĩa là hai hoặc nhiều yêu cầu cùng một lúc. Đồng thời là hai hoặc nhiều luồng (script) chạy song song.

Vì vậy, những gì bạn đang nói đến là cố định cấu hình JMeter để mô phỏng nhiều yêu cầu đồng thời. Nhưng thực ra, có một cách tiếp cận tốt hơn nhiều so với điều này. Thay vì tập trung vào việc cố gắng để đạt yêu cầu tương tự cùng một lúc, đó là fiddly trong JMeter, bạn nên thiết lập thử nghiệm của bạn là một đại diện thực tế của các loại tải bạn muốn ứng dụng của bạn để hỗ trợ. Nếu bạn làm điều đó tốt, sử dụng thời gian chờ ngẫu nhiên, bộ điều khiển thông lượng và số lượng chủ đề thực tế, thì bạn sẽ tự động kiểm tra đồng thời và đồng thời chạy thử nghiệm hiệu suất chính hãng, hợp lệ và hữu ích. Vì vậy, về cơ bản, thả bộ đếm thời gian đồng bộ hóa, sử dụng bộ đếm thời gian thông lượng không đổi thay vào đó, định cấu hình thời gian chờ và sau đó tính số lượng chính xác các luồng để tạo tải mong muốn.

Tiền thưởng bổ sung cho cách tiếp cận này là bạn sẽ ít có khả năng tăng âm bản sai. Ví dụ: nếu bạn nhấn máy chủ của mình với 5 yêu cầu đăng nhập đồng thời thì bạn có thể thấy rằng cuộc gọi này là một luồng đơn và thời gian phản hồi tăng lên. Nhưng có lẽ điều này không quan trọng, có thể cơ hội của hai cuộc gọi đăng nhập cùng một lúc quá nhỏ đến nỗi không đáng để dành thời gian thay đổi mã. Đây là một khái niệm rất quan trọng trong thử nghiệm tải - có lẽ là quan trọng nhất - bạn phải có các mục tiêu thực tế, mà không có những điều này bạn có thể chạy thử nghiệm, tìm lỗi sai và thường lãng phí thời gian mãi mãi.

+1

Cảm ơn lời giải thích tuyệt vời. Nhưng tình hình của tôi hơi khác một chút. Tôi chỉ muốn xem khi nào 5 người dùng nhấn nút đăng nhập và tìm kiếm cùng lúc với cách máy chủ của tôi phản hồi. Đó là lý do tại sao tôi đã sử dụng bộ điều khiển đồng bộ hóa. Khi tôi chạy thử nghiệm của tôi với bộ điều khiển đồng bộ hóa, kết quả mà tôi nhận được chút khác nhau. Tôi đã đề cập 10 chủ đề trong nhóm chủ đề và 5 trong đồng bộ hóa. Vì vậy, tôi nghĩ rằng nó sẽ chạy như 5 người dùng đồng thời và 5 đồng thời. Nhưng đây không phải là cách nó đang chạy. Kiểm tra đang gửi yêu cầu đăng nhập và tìm kiếm theo 2 đợt. Mỗi lô chứa 5 người dùng. – user1169236

+1

Một lần nữa, bạn cần phải hiểu sự khác nhau giữa đồng thời và đồng thời. Họ khác nhau. Một bộ đếm thời gian đồng bộ sẽ cung cấp cho bạn tính đồng thời, nhiều chủ đề sẽ cho bạn đồng thời. –

+0

Cảm ơn bạn đã đề xuất! Tôi đã nhận được giải pháp. – user1169236

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