Get in touch
or send us a question?
CONTACT

Hướng dẫn Recording Tests with JMeter

thumbnail

HTTP(S) Test Script Recorder  cho phép JMeter chặn và ghi lại các hành động của bạn trong khi bạn sử dụng ứng dụng web bằng trình duyệt ( Chrome , Safari, Firefox. JMeter sẽ tạo các đối tượng mẫu thử nghiệm và lưu trữ chúng trực tiếp vào test plan của bạn  khi bạn thực hiện.

Hướng dẫn dưới đây sẽ hướng dẫn bạn Recording Tests trang http://jmeter.apache.org/ trên Chrome và Firefox.

Bước 1 : Mở JMeter, nhấp vào nút Templates… trên thanh menu

record-template-button.png

Bước 2 : Trong cửa sổ Templates , chọn  Recording trong danh sách Select Template và nhấp vào nút  Create 

record-template-pop-up

Bước 3 : Bạn sẽ thấy Test Plan với đầy đủ yếu tố cho một  Recording Test Script nhưn bạn chỉ cần trung vào WorkBench >  HTTP (S) Test Script Recorder . Chúng ta có nhiều properties/settings trong này, nhưng chỉ cần chú ý đến các properties sau là đủ:

  • Port : Mặc định 8888 . Đó là cổng mà HTTP(S) Test Script Recorder lắng nghe. Bạn có thể thay đổi nó. Và hãy nhớ rằng Port thích hợp phải là: 4000 <Port<65535.  Hiện tại, chỉ cần để mặc định là 8888.
  • URL Patterns to Include : Cho phép lọc requests được ghi lại. Tất cả requests đều được thông qua nhưng chỉ những requests đáp ứng yêu cầu của trường URL Patterns to Include mới  được record.
    • Nhấp  Add  trong URL Patterns to Include
    • Sẽ tạo ra một mục nhập trống; nhập .*\.html
      LƯU Ý :.*\.html có nghĩa là nếu requests kết thúc bằng .html, nó sẽ được ghi lại, ngược lại, nó sẽ KHÔNG được ghi lại. Vì vậy, hãy chú ý, nếu trang web của bạn không kết thúc bằng .html, thì bạn có thể để trống.
    • Hoặc bạn có thể nhập dựa theo mẫu trên trang web của bạn để ghi lại chính xác những gì đến từ trang web của bạn.
      Ví dụ :
      • trang web của bạn jmetervn.com thì bạn sẽ nhập mẫu jmetervn.com.*
      • trang web của bạn www. example.com thì bạn sẽ nhập www. example.com.*
        (vui lòng bỏ qua khoảng trắng giữa www. và example )
  • URL Patterns to Exclude : Mọi yêu cầu khớp với một hoặc nhiều mẫu  Loại trừ KHÔNG  được ghi lại. Thông thường, chúng tôi không ghi lại tất cả các yêu cầu như image (.png, .jpg), css, js, v.v. Chỉ cần để mặc định, JMeter đã thêm 2 useful regex.
record-test-script-recorder.png

Bước 4 : Nhấp vào button Start ở cuối trang:

record-start.png

Và sau đó bấm OK trong cửa sổ bật lên  Certificate pop-up:

record-cert.png

Lưu ý : đây chỉ là cửa sổ bật lên hiển thị thông tin của bạn để cho proxy / máy chủ biết ai đang sử dụng ghi âm, nó liên quan đến vấn đề bảo mật. Nếu bạn đang sử dụng  Certificate của riêng mình thì không sao, chỉ cần nhấp vào OK. Và đừng quên, không gửi file  Certificate pop-up của bạn cho bất kỳ ai khác.

Bước 5 : Cấu hình trình duyệt của bạn để sử dụng JMeter Proxy

  • Firefox
    • Mở Firefox
    • Nhấp vào Menu > Preferences
      record-ff-settings-1.png
    • Đi tới  Advance > Network > Settings
      record-ff-settings-2.png
    • Chọn Manual proxy configuration
    • Nhập localhost vào HTTP Proxy 
    • Nhập Port ở bước 3 ở trên vào trường Port . Trong mẫu dưới đây, nó là 8888
    • Click OK.
      record-ff-settings-3.png
  • Chrome (trên MAC)
    • Mở Chrome
    • Nhấp vàoMenu > Settings
      record-chrome-mac-1.png
    • Tìm kiếm proxy
    • Nhấp vào Change proxy settings
      record-chrome-mac-2
    • Network pop-up được mở, chọn tab  Proxies
    • Chọn hộp kiểm Web Proxy (HTTP ), Secure Web Proxy (HTTPS)FTP Proxy và SOCKS Proxy .
    • Nhập localhost vào trường HTTP Proxy
    • Nhập Cổng ở bước 3 ở trên vào trường Port. Trong mẫu dưới đây là 8888
    • Bấm OK.
      record-chrome-mac-3.png
    • Sau đó nhấp vào Apply trong Network pop-up
  • Safari (trên MAC)
    • Mở Safari
    • Trong thanh menu, nhấp vào Safari > Preference
    • Chọn tab Advanced  trong cửa sổ bật lên
    • Nhấp vào TChange Settings…  trong Proxies
      record-safari-1.png
    • Cửa sổ Network được mở ra. Bây giờ hãy làm theo các bước tiếp theo trong phần Chrome, nó giống nhau

Bước 6 : Bây giờ bạn có thể bắt đầu ghi lại điều hướng của mình

  • Truy cập http://jmeter.apache.org/
  • Đi tới Documentation> Get Started
  • Đi tới Documentation> User Manual
  • Đi tới Documentation>Component Reference
  • Đi tới Documentation> Functions Reference
  • Đi tới Download> Download Releases

Và đây là kết quả, tất cả các yêu cầu đã ghi sẽ được lưu trữ trong Recording Controller

record-jmeter-page-1.png

Nếu bạn đang thắc mắc tại sao request cuối cùng Download > Download Releases không xuất hiện ở đây, thì câu trả lời là: đó không phải là request kết thúc bằng html các  URL Patterns to Include mà tôi đã xác định ở bước 3 ở trên.

Kiểm tra View Result Tree của View Result Tree, nó cho thấy tất cả các yêu cầu đã được thực hiện trong quá trình ghi, nhưng chỉ những requests cần thiết mới được lưu vào View Result Tree.

Hãy thử cách này một mình, kết quả có thể khác một chút, nhưng bạn sẽ cải thiện nó sau vài lần.


Recording HTTPS Request

Tôi hy vọng bạn sẽ dễ dàng ghi lại kịch bản đầu tiên của mình. Nhưng nếu bạn đang cố gắng ghi lại một trang web HTTPS, bạn có thể gặp phải lỗi như sau:

record-error-1.png
Lỗi trên Chrome
record-error-2
Lỗi trên Firefox

Khi bạn gặp lỗi này, điều đó có nghĩa là bạn cần cài đặt certificate trước khi ghi lại trang web HTTPS.

Rất dễ dàng, vui lòng thực hiện bước sau để vượt qua sự cố này

Firefox :

  • Mở Firefox
  • Nhấp vào Menu > Preference
  • Chuyển đến tab Advanced > tab Certificates > View Certificates
    record-error-ff-1.png
  • Cửa sổ được mở, chọn Authorities tab > Import
  • Browse  đến tệp  ApacheJMeterTemporaryRootCA.crt trong thư mục / $ {JMETER_HOME} / bin
    Lưu ý : Tệp này chỉ được tạo sau khi bạn nhấp vào nút Start  trong HTTP(S) Test Script Recorder, hãy tham khảo Bước 4 ở trên.
    record-error-ff-3.png
  • Chọn: Trust this CA to identify websites
    record-error-ff-4.png
  • Nó sẽ tự động quay lại  Authorities pop-up và hiển thị Certificate của JMeter được thêm vào gần đây (kiểm tra hình ảnh bên dưới), nhấp vào OK để hoàn tất.
    record-error-ff-5.png

Chrome (trên MAC) :

  • Mở Chrome
  • Mở Menu bằng cách nhấp vào nút ba chấm và chọn Settings.
    record-chrome-settings-1hoặc chỉ cần nhập : chrome://settings trong thanh địa chỉ của Chrome và nhấn enter
    record-chrome-settings-2
  • Nhập “ Settings ” vào trường Search Settings, sau đósearch. Và nhấp vào nút Manage certificates…  trong phần HTTPS / SSL
    record-chrome-settings-certificate.png
  • Nó mở cửa sổ bật lên Truy cập chuỗi khóa, tập trung vào Chứng chỉ danh mục, kéo và thả ApacheJMeterTemporaryRootCA.crt tệp vào thư mục JMeter / bin và thả tệp vào thư mục này.
    Lưu ý : Tệp này chỉ được tạo sau khi bạn nhấp vào nút Start trong HTTP(S) Test Script Recorder, hãy tham khảo Bước 4 ở trên.
    record-chrome-settings-import-cert-1.png
  • Sau khi nhập vào danh mục Certificates , nó sẽ hiển thị dưới dạng tệp không đáng tin cậy
    record-chrome-settings-import-cert-2.png
  • Bây giờ chúng ta phải thay đổi nó thành đáng tin cậy bằng cách làm như sau: Nhấp đúp vào tệp này và thay đổi tùy chọn When using this certificate từ Use System Defaults to Always Trust.
    record-chrome-settings-import-cert-3
  • Đóng cửa sổ bật lên đó, mật khẩu người dùng có thể được yêu cầu cho thay đổi này. Khi nó quay trở lại cửa sổ bật lên Keychain Access, hãy kiểm tra xem chứng chỉ đã được cài đặt thành công và đáng tin cậy ngay bây giờ chưa.
    record-chrome-settings-import-cert-4.png

Bây giờ bạn có thể ghi lại trang web HTTPS bình thường.

Link tham khảo

https://www.guru99.com/how-to-use-jmeter-for-http-proxy-server-testing.html