Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jakarta-jmeter Wiki" 
for change notification.

The "JMeterAutomatedRemoteTesting" page has been changed by brettcave.
http://wiki.apache.org/jakarta-jmeter/JMeterAutomatedRemoteTesting?action=diff&rev1=2&rev2=3

--------------------------------------------------

  
  = Requirements =
  This article assumes that you:
+ 
   * know the basics of JMeter
   * have an existing test plan
   * have a bit of knowledge on using variables in test plans
@@ -16, +17 @@

   * The test plan does not need Listeners, as this will be configured via 
parameters. This will improve performance on the testing.
   * Run the test mode in stand-alone mode (i.e. no remote servers):   `jmeter 
-n -t load_test.jmx -l load_test_report.jtl -q mytest.properties -j mytest.log`
   * 1 small piece of functionality missing is the ability to set global 
variables from a property file. the "-q" parameter defines an additional 
property file, which is the equivalent of setting properties for the contents 
of the file using the -J parameter. This parameters are not global however, as 
would be set by the -G parameter. the following bash script (if your using 
Linux) would help with converting a properties file to global properties:
+ 
  {{{
  for var in `grep -vE "^(#|$)" mytest.properties`; do
    GLOBAL_VARS="-G${var} ${GLOBAL_VARS}"
  done
  }}}
- 
  This is a relatively simple bash expansion, and will break if there are any 
spaces in variable names or values (e.g. test.description="My Test" - the space 
would break the bash for loop.)
  
-  * On all client machines, start up JMeter server, ensuring that firewall is 
not blocking connections (clients must all be on the same subnet). 
+  * On all client machines, start up JMeter server, ensuring that firewall is 
not blocking connections (clients must all be on the same subnet).
   * On JMeter controller (the host initializing the test), run the test with 
the -R parameter (can be run using -r and specfiying hosts in jmeter properties 
file):
+ 
  `jmeter -n -t load_test.jmx -l load_test_report.jtl -q mytest.properties -j 
mytest.log -R remotehost1,remotehost2 ${GLOBAL_VARS}`
  
  Note that load injection to targets will be a increased as a ratio of number 
of threads per thread group multiplied by number of client machines.
  
- A script similar to the following could be used to start up jmeter:
+ A bash script similar to the following could be used to start up jmeter 
(called jmeter_test_wrapper.sh for example):
+ 
  {{{
  #!/bin/sh
  
@@ -43, +46 @@

  HOST_LIST=${HOST_LIST:+"-R ${HOST_LIST}"}
  
  for var in `grep -vE "^#|^$" ${JMETER_CUSTOM_PROPERTIES}`; do
-       GLOBAL_VARS="-G${var} ${GLOBAL_VARS}"
+         GLOBAL_VARS="-G${var} ${GLOBAL_VARS}"
  done
  
  if [ -f ${loadtest}.jmx ]; then
-       echo "Running ${loadtest} with:"
+         echo "Running ${loadtest} with:"
-       echo -e "               -----------------------
-       $JMETER -n
-               -t ${loadtest}.jmx
+         echo -e "               -----------------------
+         $JMETER -n
+                 -t ${loadtest}.jmx
-               -l ${REPORT_DIR}/${loadtest}.jtl
+                 -l ${REPORT_DIR}/${loadtest}.jtl
-               -p ${JMETER_PROPERTIES}
-               ${GLOBAL_VARS}
-               ${HOST_LIST}
+                 -p ${JMETER_PROPERTIES}
+                 ${GLOBAL_VARS}
+                 ${HOST_LIST}
-               -j ${REPORT_DIR}/_${loadtest}.log
+                 -j ${REPORT_DIR}/_${loadtest}.log
-       -----------------------"
+         -----------------------"
-       $JMETER -n \
-               -t ${loadtest}.jmx \
+         $JMETER -n \
+                 -t ${loadtest}.jmx \
-               -l ${REPORT_DIR}/${loadtest}.jtl \
+                 -l ${REPORT_DIR}/${loadtest}.jtl \
-               -p ${JMETER_PROPERTIES} \
-               ${GLOBAL_VARS} \
-               ${HOST_LIST} \
+                 -p ${JMETER_PROPERTIES} \
+                 ${GLOBAL_VARS} \
+                 ${HOST_LIST} \
-               -j ${REPORT_DIR}/_${loadtest}.log
+                 -j ${REPORT_DIR}/_${loadtest}.log
  else
-       echo "Could not find test plan for ${loadtest}"
+         echo "Could not find test plan for ${loadtest}"
  fi
  }}}
+ For a local test, you could run: `./jmeter_test_wrapper.sh`
+ For a remote test, it can be modified as 
`HOST_LIST="192.168.1.10,192.168.1.12" ./jmeter_test_wrapper.sh`
+ Now all you need to do is make sure the servers are running and add the above 
command into scheduler.
  

---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscr...@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-h...@jakarta.apache.org

Reply via email to