You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2013/07/19 22:55:56 UTC
svn commit: r1505013 - /jmeter/trunk/xdocs/usermanual/best-practices.xml
Author: pmouawad
Date: Fri Jul 19 20:55:55 2013
New Revision: 1505013
URL: http://svn.apache.org/r1505013
Log:
Add advice on JSR223 and Groovy
Modified:
jmeter/trunk/xdocs/usermanual/best-practices.xml
Modified: jmeter/trunk/xdocs/usermanual/best-practices.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/usermanual/best-practices.xml?rev=1505013&r1=1505012&r2=1505013&view=diff
==============================================================================
--- jmeter/trunk/xdocs/usermanual/best-practices.xml (original)
+++ jmeter/trunk/xdocs/usermanual/best-practices.xml Fri Jul 19 20:55:55 2013
@@ -227,6 +227,8 @@ java -jar ../lib/bshclient.jar localhost
Each BeanShell test element has its own copy of the interpreter (for each thread).
If the test element is repeatedly called, e.g. within a loop, then the interpreter is retained
between invocations unless the "Reset bsh.Interpreter before each call" option is selected.
+For intensive load testing, it is recommended to use JSR223 scripting languages which ScriptingEngine implements Compilable,
+see JSR223 section below for more details.
</p>
<p>
Some long-running tests may cause the interpreter to use lots of memory; if this is the case try using the reset option.
@@ -325,6 +327,10 @@ The appropriate property file can be pas
<section name="§-num;.11 JSR223 Elements" anchor="jsr223">
<p>
+For intensive load testing, the recommended scripting language is one which ScriptingEngine implements Compilable interface.
+Groovy is one of them, Beanshell nor Javascript do as of release date of JMeter 2.10, so it is
+recommended to avoid them for intensive load testing.
+
When using JSR 223 elements, always set caching key to a unique value to ensure the script compilation is cached if underlying language supports it.
Ensure the script does not use any variable using ${varName} as caching would take only first value of ${varName}. Instead use :
<code>