2011-01-24 48 views
9

Tôi đang cố tạo các kiểm tra JMeter và sử dụng các kiểm tra tương tự cho các môi trường khác nhau-QA, Dàn dựng, Dev, v.v. Tôi muốn tự động thay đổi địa chỉ IP bằng cách thay đổi Tệp CSV hoặc chuyển giá trị thông qua ant script hoặc thủ công thông qua dấu nhắc lệnh. Thật không may, tôi đã không thể làm như vậy. Kiểm tra không nhận giá trị từ tệp CSV hoặc từ lời nhắc lệnh.JMeter chèn tên máy chủ hoặc IP động

Ai đó có thể giúp tôi.

Cảm ơn trước.

+0

Bạn có nhận được câu trả lời chấp nhận được không? – BlackGaff

Trả lời

0

Nếu bạn nhìn vào documentation, sử dụng một CSV để tải các biến vào ra mắt là khá đơn giản:

Tạo một tập tin văn bản có chứa tên người dùng và mật khẩu, cách nhau bằng dấu phẩy. Đặt cái này vào cùng thư mục với kế hoạch kiểm thử của bạn.

Thêm phần tử cấu hình Tập dữ liệu CSV vào gói thử nghiệm. Đặt tên cho biến USER và PASS.

Thay thế tên đăng nhập với $ {USER} và mật khẩu với $ {PASS} trên lấy mẫu thích hợp

CSV Tập dữ liệu phần tử sẽ đọc một dòng mới cho mỗi thread

Điều quan trọng điều cần lưu ý là dòng cuối cùng - có lẽ bạn đang chuyển sang một nhóm chủ đề mới, nhưng có tất cả các biến của bạn trong một dòng. Ngoài ra, có chúng trên nhiều dòng cho một nhóm cũng sẽ gây ra vấn đề.

0

Tập dữ liệu CSV là cách dễ dàng để thay đổi nhiều giá trị.

Nếu bạn có mong muốn làm điều đó từ dòng lệnh, bạn có thể thiết lập tên miền và thông tin đăng nhập như PROPERTIES, và sau đó xác định các tính chất từ ​​dòng lệnh

10

tôi thường thêm một yếu tố HTTP Request Defaults để kiểm tra và thay đổi nó theo cách thủ công.

Selecting an HTTP Request Defaults

enter image description here

Nếu không cho tự động hóa, bạn có thể sửa đổi các tập tin jmx sử dụng một kịch bản.

Chỉnh sửa trên thực tế, bạn có thể sử dụng bộ lọc kiến ​​để thay đổi thời gian xây dựng động này. Ví dụ: sử dụng bộ lọc <filter token="SERVER" value="${server}"/> và mục tiêu copy với tính năng lọc trên tệp bên dưới sẽ giúp bạn có tệp jmx mới sẽ sử dụng đúng máy chủ.

<ConfigTestElement guiclass="HttpDefaultsGui" testclass="ConfigTestElement" testname="HTTP Request Defaults" enabled="true"> 
      <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> 
      <collectionProp name="Arguments.arguments"/> 
      </elementProp> 
      <stringProp name="HTTPSampler.domain">@[email protected]</stringProp> 
      <stringProp name="HTTPSampler.port"></stringProp> 
      <stringProp name="HTTPSampler.connect_timeout"></stringProp> 
      <stringProp name="HTTPSampler.response_timeout"></stringProp> 
      <stringProp name="HTTPSampler.protocol"></stringProp> 
      <stringProp name="HTTPSampler.contentEncoding"></stringProp> 
      <stringProp name="HTTPSampler.path"></stringProp> 
     </ConfigTestElement> 
3

Trong thử nghiệm, bạn có thể sử dụng thuộc tính Jmeter - và sau đó bạn có thể chuyển các thuộc tính đó từ dòng lệnh.

Hãy nhìn vào phần này của tài liệu: http://jmeter.apache.org/usermanual/test_plan.html#using_variables

Phần này cũng rất hữu ích: http://jmeter.apache.org/usermanual/functions.html#__P

Nếu bạn muốn thay đổi tên máy chủ, bạn có thể làm theo phương pháp này:

Xác định giá trị thuộc tính trong dòng lệnh:

jmeter -Jhostname1 = www.realhost.edu

Fetch giá trị trong các thử nghiệm riêng của mình, cung cấp một mặc định nếu không có sẵn:

$ {__ P (hostname, www.dummy.org)} - giá trị trả về của hostname tài sản hoặc www.dummy.org nếu không muốn nói được định nghĩa

1

Trước hết, bạn nên đặt tệp csv nơi bạn đã lưu tệp tập lệnh thử nghiệm của mình. Thông thường, kịch bản thử nghiệm có thể được lưu như với phần mở rộng jmx và đặt tập tin csv của bạn trong cùng một thư mục của nó.

Nội dung của tập tin CSV như sau:

url;www.test123.com 
url;www.test1234.com 
url;www.test12345.com 

Lưu ý rằng trong cấu hình Thread Group, đếm thread phải có số lượng tối thiểu các dòng trong tập tin csv. Theo tập tin CSV ở trên, chúng ta nên xác định tối thiểu 3 chủ đề trong Thread Group.

Sau cấu hình này, JMeter sẽ tự động gọi cấu hình Http Request Defaults mỗi khi một luồng được thực thi.

CSV Tập dữ liệu Config

enter image description here

Yêu cầu Defaults HTTP

enter image description here

HTTP Request (Chỉ đường dẫn được thiết lập)

enter image description here

Regular Expression Extractor (Không bắt buộc để tìm câu trả lời cụ thể)

enter image description here

Write tìm thấy kết quả regex vào một tập tin (Không bắt buộc)

enter image description here

Nguồn : http://www.codesenior.com/en/tutorial/JMeter-Dynamically-Change-Server-Name-Using-CSV-Data-File

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