2011-04-18 5 views
2

WCF REST 서비스를로드하려고합니다.
서비스는 단일 매개 변수를 사용하고 페이지를 반환합니다.
이 단일 매개 변수를 여러 개 전달하고 싶습니다.JMeter로 부하 테스트

예 :

server:8080/service/?id=1 
server:8080/service/?id=2 
server:8080/service/?id=3 
server:8080/service/?id=4 
server:8080/service/?id=5 
server:8080/service/?id=6 
......  

내가 어떻게해야합니까?
아이디어가 있으십니까?

답변

3

아직 의심스러운 점이 있으시면 Loop controllerCounter을 살펴보십시오.


UPDATE

귀하의 응답은 예의 바른 소리를하지 않았다.
어쨌든, 이것에 대해서는 어떻습니까? CSV data config?

임의의 데이터를 넣을 수 있습니다.

JMeter Project는 제게 적합합니다.

http://localhost:81/index.php?id=1 
http://localhost:81/index.php?id=2 
http://localhost:81/index.php?id=3 


<?xml version="1.0" encoding="UTF-8"?> 
<jmeterTestPlan version="1.2" properties="2.1"> 
    <hashTree> 
    <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Test plan" enabled="true"> 
     <stringProp name="TestPlan.comments"></stringProp> 
     <boolProp name="TestPlan.functional_mode">false</boolProp> 
     <boolProp name="TestPlan.serialize_threadgroups">false</boolProp> 
     <elementProp name="TestPlan.user_defined_variables" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" testname="Variables definidas por el Usuario" enabled="true"> 
    <collectionProp name="Arguments.arguments"/> 
     </elementProp> 
     <stringProp name="TestPlan.user_define_classpath"></stringProp> 
    </TestPlan> 
    <hashTree> 
     <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Thread Group" enabled="true"> 
    <stringProp name="ThreadGroup.on_sample_error">continue</stringProp> 
    <elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Controlador Loop" enabled="true"> 
     <boolProp name="LoopController.continue_forever">false</boolProp> 
     <stringProp name="LoopController.loops">1</stringProp> 
    </elementProp> 
    <stringProp name="ThreadGroup.num_threads">1</stringProp> 
    <stringProp name="ThreadGroup.ramp_time">1</stringProp> 
    <longProp name="ThreadGroup.start_time">1303164070000</longProp> 
    <longProp name="ThreadGroup.end_time">1303164070000</longProp> 
    <boolProp name="ThreadGroup.scheduler">false</boolProp> 
    <stringProp name="ThreadGroup.duration"></stringProp> 
    <stringProp name="ThreadGroup.delay"></stringProp> 
     </ThreadGroup> 
     <hashTree> 
    <LoopController guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true"> 
     <boolProp name="LoopController.continue_forever">true</boolProp> 
     <stringProp name="LoopController.loops">3</stringProp> 
    </LoopController> 
    <hashTree> 
     <CSVDataSet guiclass="TestBeanGUI" testclass="CSVDataSet" testname="CSV Data Set Config" enabled="true"> 
     <stringProp name="delimiter">,</stringProp> 
     <stringProp name="fileEncoding"></stringProp> 
     <stringProp name="filename">c:\tmp\data.csv</stringProp> 
     <boolProp name="quotedData">false</boolProp> 
     <boolProp name="recycle">true</boolProp> 
     <stringProp name="shareMode">Current thread group</stringProp> 
     <boolProp name="stopThread">false</boolProp> 
     <stringProp name="variableNames">A</stringProp> 
     </CSVDataSet> 
     <hashTree/> 
     <HTTPSampler guiclass="HttpTestSampleGui" testclass="HTTPSampler" testname="HTTP Request" enabled="true"> 
     <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true"> 
      <collectionProp name="Arguments.arguments"> 
     <elementProp name="id" elementType="HTTPArgument"> 
      <boolProp name="HTTPArgument.always_encode">false</boolProp> 
      <stringProp name="Argument.value">${A}</stringProp> 
      <stringProp name="Argument.metadata">=</stringProp> 
      <boolProp name="HTTPArgument.use_equals">true</boolProp> 
      <stringProp name="Argument.name">id</stringProp> 
     </elementProp> 
      </collectionProp> 
     </elementProp> 
     <stringProp name="HTTPSampler.domain">localhost</stringProp> 
     <stringProp name="HTTPSampler.port">81</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">index.php</stringProp> 
     <stringProp name="HTTPSampler.method">GET</stringProp> 
     <boolProp name="HTTPSampler.follow_redirects">true</boolProp> 
     <boolProp name="HTTPSampler.auto_redirects">false</boolProp> 
     <boolProp name="HTTPSampler.use_keepalive">true</boolProp> 
     <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp> 
     <boolProp name="HTTPSampler.monitor">false</boolProp> 
     <stringProp name="HTTPSampler.embedded_url_re"></stringProp> 
     </HTTPSampler> 
     <hashTree/> 
    </hashTree> 
    <ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="Result Tree" enabled="true"> 
     <boolProp name="ResultCollector.error_logging">false</boolProp> 
     <objProp> 
     <name>saveConfig</name> 
     <value class="SampleSaveConfiguration"> 
      <time>true</time> 
      <latency>true</latency> 
      <timestamp>true</timestamp> 
      <success>true</success> 
      <label>true</label> 
      <code>true</code> 
      <message>true</message> 
      <threadName>true</threadName> 
      <dataType>true</dataType> 
      <encoding>false</encoding> 
      <assertions>true</assertions> 
      <subresults>true</subresults> 
      <responseData>false</responseData> 
      <samplerData>false</samplerData> 
      <xml>true</xml> 
      <fieldNames>false</fieldNames> 
      <responseHeaders>false</responseHeaders> 
      <requestHeaders>false</requestHeaders> 
      <responseDataOnError>false</responseDataOnError> 
      <saveAssertionResultsFailureMessage>false</saveAssertionResultsFailureMessage> 
      <assertionsResultsToSave>0</assertionsResultsToSave> 
      <bytes>true</bytes> 
     </value> 
     </objProp> 
     <stringProp name="filename"></stringProp> 
    </ResultCollector> 
    <hashTree/> 
     </hashTree> 
    </hashTree> 
    </hashTree> 
</jmeterTestPlan> 
+0

아니다 :

1 2 3 

이 전화를 얻기 위해 내용으로이 세 가지 라인 \ TMP \ data.csv :
는 C에서 CSV 파일을 넣어 사실 내가 원하는거야. id = 1 또는 2 또는 3은 구문 적입니다. 나는 무엇이든 될 수있다. – DarthVader

+0

예, csv 구성 작동, 루프 컨트롤러 및 카운터가 적합하지 않습니다. 감사. – DarthVader