mirror of
https://github.com/corda/corda.git
synced 2024-12-28 08:48:57 +00:00
First working version of RPC & JMeter
This commit is contained in:
parent
855c22218a
commit
ce184b6603
2
.idea/compiler.xml
generated
2
.idea/compiler.xml
generated
@ -77,6 +77,8 @@
|
|||||||
<module name="jfx_integrationTest" target="1.8" />
|
<module name="jfx_integrationTest" target="1.8" />
|
||||||
<module name="jfx_main" target="1.8" />
|
<module name="jfx_main" target="1.8" />
|
||||||
<module name="jfx_test" target="1.8" />
|
<module name="jfx_test" target="1.8" />
|
||||||
|
<module name="jmeter_main" target="1.8" />
|
||||||
|
<module name="jmeter_test" target="1.8" />
|
||||||
<module name="kryo-hook_main" target="1.8" />
|
<module name="kryo-hook_main" target="1.8" />
|
||||||
<module name="kryo-hook_test" target="1.8" />
|
<module name="kryo-hook_test" target="1.8" />
|
||||||
<module name="loadtest_main" target="1.8" />
|
<module name="loadtest_main" target="1.8" />
|
||||||
|
@ -34,6 +34,7 @@ include 'tools:explorer:capsule'
|
|||||||
include 'tools:demobench'
|
include 'tools:demobench'
|
||||||
include 'tools:loadtest'
|
include 'tools:loadtest'
|
||||||
include 'tools:graphs'
|
include 'tools:graphs'
|
||||||
|
include 'tools:jmeter'
|
||||||
include 'example-code'
|
include 'example-code'
|
||||||
project(':example-code').projectDir = file("$settingsDir/docs/source/example-code")
|
project(':example-code').projectDir = file("$settingsDir/docs/source/example-code")
|
||||||
include 'samples:attachment-demo'
|
include 'samples:attachment-demo'
|
||||||
|
58
tools/jmeter/build.gradle
Normal file
58
tools/jmeter/build.gradle
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
apply plugin: 'kotlin'
|
||||||
|
apply plugin: 'application'
|
||||||
|
//apply plugin: 'net.corda.plugins.cordapp'
|
||||||
|
//apply plugin: 'net.corda.plugins.cordformation'
|
||||||
|
|
||||||
|
mainClassName = 'net.corda.jmeter.Launcher'
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
compile project(':client:rpc')
|
||||||
|
|
||||||
|
// JMeter
|
||||||
|
ext.jmVersion = "3.3"
|
||||||
|
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_components', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_core', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_ftp', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_functions', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_http', version: "$jmVersion"
|
||||||
|
compile group: 'org.apache.jmeter', name: 'ApacheJMeter_java', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_jdbc', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_jms', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_junit', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_ldap', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_mail', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_mongodb', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_native', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_tcp', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter_config', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'ApacheJMeter', version: "$jmVersion"
|
||||||
|
runtime group: 'org.apache.jmeter', name: 'jorphan', version: "$jmVersion"
|
||||||
|
|
||||||
|
compile project(":test-utils")
|
||||||
|
compile project(":finance")
|
||||||
|
|
||||||
|
//cordapp project(':finance')
|
||||||
|
//cordapp project(':samples:bank-of-corda-demo')
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//jmeter {
|
||||||
|
// testFileDir = file("src/main/resources/jmeter")
|
||||||
|
//}
|
||||||
|
|
||||||
|
run {
|
||||||
|
systemProperty "search_paths", project(':tools:jmeter').configurations.runtime.files.join(";")
|
||||||
|
//jvmArgs += "-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005"
|
||||||
|
args+= [ "-p", sourceSets.main.resources.getSrcDirs().first().getPath()+"/jmeter.properties",
|
||||||
|
"-d", sourceSets.main.resources.getSrcDirs().first().getPath(),
|
||||||
|
"-j", buildDir.getPath()+"/jmeter.log" ]
|
||||||
|
}
|
||||||
|
|
||||||
|
jar {
|
||||||
|
manifest {
|
||||||
|
attributes(
|
||||||
|
'Automatic-Module-Name': 'net.corda.tools.jmeter'
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,83 @@
|
|||||||
|
package net.corda.jmeter
|
||||||
|
|
||||||
|
import net.corda.client.rpc.CordaRPCClient
|
||||||
|
import net.corda.client.rpc.CordaRPCConnection
|
||||||
|
import net.corda.core.flows.FlowLogic
|
||||||
|
import net.corda.core.messaging.CordaRPCOps
|
||||||
|
import net.corda.core.utilities.NetworkHostAndPort
|
||||||
|
import org.apache.jmeter.config.Argument
|
||||||
|
import org.apache.jmeter.config.Arguments
|
||||||
|
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient
|
||||||
|
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext
|
||||||
|
import org.apache.jmeter.samplers.SampleResult
|
||||||
|
|
||||||
|
|
||||||
|
class CordaRPCSampler() : AbstractJavaSamplerClient() {
|
||||||
|
companion object {
|
||||||
|
val host = Argument("host", "localhost", "<meta>", "The remote network address (hostname or IP address) to connect to for RPC.")
|
||||||
|
val port = Argument("port", "10000", "<meta>", "The remote port to connect to for RPC.")
|
||||||
|
val username = Argument("username", "corda", "<meta>", "The RPC user to connect to connect as.")
|
||||||
|
val password = Argument("password", "corda_is_awesome", "<meta>", "The password for the RPC user.")
|
||||||
|
val className = Argument("pluginClassName", "", "<meta>", "The class name of the implementation of ${CordaRPCSampler.Plugin::class.java}.")
|
||||||
|
|
||||||
|
val allArgs = setOf(host, port, username, password, className)
|
||||||
|
}
|
||||||
|
|
||||||
|
var rpcClient: CordaRPCClient? = null
|
||||||
|
var rpcConnection: CordaRPCConnection? = null
|
||||||
|
var rpcProxy: CordaRPCOps? = null
|
||||||
|
var plugin: Plugin? = null
|
||||||
|
|
||||||
|
override fun getDefaultParameters(): Arguments {
|
||||||
|
// Add copies of all args, since they seem to be mutable.
|
||||||
|
return Arguments().apply { for(arg in allArgs) { addArgument(arg.clone() as Argument) } }
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun setupTest(context: JavaSamplerContext) {
|
||||||
|
super.setupTest(context)
|
||||||
|
rpcClient = CordaRPCClient(NetworkHostAndPort(context.getParameter(host.name), context.getIntParameter(port.name)))
|
||||||
|
rpcConnection = rpcClient!!.start(context.getParameter(username.name), context.getParameter(password.name))
|
||||||
|
rpcProxy = rpcConnection!!.proxy
|
||||||
|
plugin = Class.forName(context.getParameter(className.name)).newInstance() as Plugin
|
||||||
|
plugin!!.setupTest(rpcProxy!!, context)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun runTest(context: JavaSamplerContext): SampleResult {
|
||||||
|
val flowInvoke = plugin!!.createFlowInvoke(rpcProxy!!, context)
|
||||||
|
val result = SampleResult()
|
||||||
|
result.sampleStart()
|
||||||
|
val handle = rpcProxy!!.startFlowDynamic(flowInvoke!!.flowLogicClass, *(flowInvoke!!.args))
|
||||||
|
result.sampleLabel = handle.id.toString()
|
||||||
|
result.latencyEnd()
|
||||||
|
try {
|
||||||
|
val flowResult = handle.returnValue.get()
|
||||||
|
result.sampleEnd()
|
||||||
|
return result.apply {
|
||||||
|
isSuccessful = true
|
||||||
|
}
|
||||||
|
} catch(e: Exception) {
|
||||||
|
result.sampleEnd()
|
||||||
|
return result.apply {
|
||||||
|
isSuccessful = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun teardownTest(context: JavaSamplerContext) {
|
||||||
|
plugin!!.teardownTest(rpcProxy!!, context)
|
||||||
|
plugin = null
|
||||||
|
rpcProxy = null
|
||||||
|
rpcConnection!!.close()
|
||||||
|
rpcConnection = null
|
||||||
|
rpcClient = null
|
||||||
|
super.teardownTest(context)
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Plugin {
|
||||||
|
fun setupTest(rpcProxy: CordaRPCOps, testContext: JavaSamplerContext)
|
||||||
|
fun createFlowInvoke(rpcProxy: CordaRPCOps, testContext: JavaSamplerContext): FlowInvoke<*>
|
||||||
|
fun teardownTest(rpcProxy: CordaRPCOps, testContext: JavaSamplerContext)
|
||||||
|
}
|
||||||
|
|
||||||
|
class FlowInvoke<T : FlowLogic<*>>(val flowLogicClass: Class<out T>, val args: Array<Any?>)
|
||||||
|
}
|
13
tools/jmeter/src/main/kotlin/net/corda/jmeter/Launcher.kt
Normal file
13
tools/jmeter/src/main/kotlin/net/corda/jmeter/Launcher.kt
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
package net.corda.jmeter
|
||||||
|
|
||||||
|
import org.apache.jmeter.JMeter
|
||||||
|
|
||||||
|
class Launcher {
|
||||||
|
companion object {
|
||||||
|
@JvmStatic
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
val jmeter = JMeter()
|
||||||
|
jmeter.start(args)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,47 @@
|
|||||||
|
package net.corda.jmeter
|
||||||
|
|
||||||
|
import net.corda.core.identity.Party
|
||||||
|
import net.corda.core.messaging.CordaRPCOps
|
||||||
|
import net.corda.core.messaging.startFlow
|
||||||
|
import net.corda.core.utilities.OpaqueBytes
|
||||||
|
import net.corda.core.utilities.getOrThrow
|
||||||
|
import net.corda.finance.DOLLARS
|
||||||
|
import net.corda.finance.flows.CashIssueFlow
|
||||||
|
import net.corda.jmeter.CordaRPCSampler.FlowInvoke
|
||||||
|
import net.corda.testing.DUMMY_BANK_A
|
||||||
|
import net.corda.testing.DUMMY_BANK_B
|
||||||
|
import net.corda.testing.contracts.calculateRandomlySizedAmounts
|
||||||
|
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext
|
||||||
|
import java.util.*
|
||||||
|
|
||||||
|
|
||||||
|
abstract class AsbtractTraderDemoPlugin : CordaRPCSampler.Plugin {
|
||||||
|
|
||||||
|
lateinit var buyer: Party
|
||||||
|
lateinit var seller: Party
|
||||||
|
lateinit var notary: Party
|
||||||
|
|
||||||
|
protected fun getIdentities(rpc: CordaRPCOps) {
|
||||||
|
buyer = rpc.wellKnownPartyFromX500Name(DUMMY_BANK_A.name) ?: throw IllegalStateException("Don't know ${DUMMY_BANK_A.name}")
|
||||||
|
seller = rpc.wellKnownPartyFromX500Name(DUMMY_BANK_B.name) ?: throw IllegalStateException("Don't know ${DUMMY_BANK_B.name}")
|
||||||
|
notary = rpc.notaryIdentities().first()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class CashIssuerPlugin : AsbtractTraderDemoPlugin() {
|
||||||
|
override fun setupTest(rpcProxy: CordaRPCOps, testContext: JavaSamplerContext) {
|
||||||
|
getIdentities(rpcProxy)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun teardownTest(rpcProxy: CordaRPCOps, testContext: JavaSamplerContext) {
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun createFlowInvoke(rpcProxy: CordaRPCOps, testContext: JavaSamplerContext): FlowInvoke<CashIssueFlow> {
|
||||||
|
val amount = 1_100_000_000_000.DOLLARS
|
||||||
|
//val amounts = calculateRandomlySizedAmounts(amount, 3, 10, Random())
|
||||||
|
//rpc.startFlow(net.corda.finance.flows::CashIssueFlow, amount, OpaqueBytes.of(1), notary).returnValue.getOrThrow()
|
||||||
|
return FlowInvoke<CashIssueFlow>(CashIssueFlow::class.java, arrayOf(amount, OpaqueBytes.of(1), notary))
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
177
tools/jmeter/src/main/resources/Java Request.jmx
Normal file
177
tools/jmeter/src/main/resources/Java Request.jmx
Normal file
@ -0,0 +1,177 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<jmeterTestPlan version="1.2" properties="3.2" jmeter="3.3 r1808647">
|
||||||
|
<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="User Defined Variables" 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="Loop Controller" enabled="true">
|
||||||
|
<boolProp name="LoopController.continue_forever">false</boolProp>
|
||||||
|
<stringProp name="LoopController.loops">1000</stringProp>
|
||||||
|
</elementProp>
|
||||||
|
<stringProp name="ThreadGroup.num_threads">2</stringProp>
|
||||||
|
<stringProp name="ThreadGroup.ramp_time"></stringProp>
|
||||||
|
<longProp name="ThreadGroup.start_time">1509455820000</longProp>
|
||||||
|
<longProp name="ThreadGroup.end_time">1509455820000</longProp>
|
||||||
|
<boolProp name="ThreadGroup.scheduler">false</boolProp>
|
||||||
|
<stringProp name="ThreadGroup.duration"></stringProp>
|
||||||
|
<stringProp name="ThreadGroup.delay"></stringProp>
|
||||||
|
</ThreadGroup>
|
||||||
|
<hashTree>
|
||||||
|
<JavaSampler guiclass="JavaTestSamplerGui" testclass="JavaSampler" testname="Java Request" enabled="true">
|
||||||
|
<elementProp name="arguments" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" enabled="true">
|
||||||
|
<collectionProp name="Arguments.arguments">
|
||||||
|
<elementProp name="host" elementType="Argument">
|
||||||
|
<stringProp name="Argument.name">host</stringProp>
|
||||||
|
<stringProp name="Argument.value">localhost</stringProp>
|
||||||
|
<stringProp name="Argument.metadata">=</stringProp>
|
||||||
|
</elementProp>
|
||||||
|
<elementProp name="port" elementType="Argument">
|
||||||
|
<stringProp name="Argument.name">port</stringProp>
|
||||||
|
<stringProp name="Argument.value">10012</stringProp>
|
||||||
|
<stringProp name="Argument.metadata">=</stringProp>
|
||||||
|
</elementProp>
|
||||||
|
<elementProp name="username" elementType="Argument">
|
||||||
|
<stringProp name="Argument.name">username</stringProp>
|
||||||
|
<stringProp name="Argument.value">demo</stringProp>
|
||||||
|
<stringProp name="Argument.metadata">=</stringProp>
|
||||||
|
</elementProp>
|
||||||
|
<elementProp name="password" elementType="Argument">
|
||||||
|
<stringProp name="Argument.name">password</stringProp>
|
||||||
|
<stringProp name="Argument.value">demo</stringProp>
|
||||||
|
<stringProp name="Argument.metadata">=</stringProp>
|
||||||
|
</elementProp>
|
||||||
|
<elementProp name="pluginClassName" elementType="Argument">
|
||||||
|
<stringProp name="Argument.name">pluginClassName</stringProp>
|
||||||
|
<stringProp name="Argument.value">net.corda.jmeter.CashIssuerPlugin</stringProp>
|
||||||
|
<stringProp name="Argument.metadata">=</stringProp>
|
||||||
|
</elementProp>
|
||||||
|
</collectionProp>
|
||||||
|
</elementProp>
|
||||||
|
<stringProp name="classname">net.corda.jmeter.CordaRPCSampler</stringProp>
|
||||||
|
</JavaSampler>
|
||||||
|
<hashTree/>
|
||||||
|
</hashTree>
|
||||||
|
<ResultCollector guiclass="TableVisualizer" testclass="ResultCollector" testname="View Results in Table" 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>false</xml>
|
||||||
|
<fieldNames>true</fieldNames>
|
||||||
|
<responseHeaders>false</responseHeaders>
|
||||||
|
<requestHeaders>false</requestHeaders>
|
||||||
|
<responseDataOnError>false</responseDataOnError>
|
||||||
|
<saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
|
||||||
|
<assertionsResultsToSave>0</assertionsResultsToSave>
|
||||||
|
<bytes>true</bytes>
|
||||||
|
<sentBytes>true</sentBytes>
|
||||||
|
<threadCounts>true</threadCounts>
|
||||||
|
<idleTime>true</idleTime>
|
||||||
|
<connectTime>true</connectTime>
|
||||||
|
</value>
|
||||||
|
</objProp>
|
||||||
|
<stringProp name="filename"></stringProp>
|
||||||
|
</ResultCollector>
|
||||||
|
<hashTree/>
|
||||||
|
<ResultCollector guiclass="StatGraphVisualizer" testclass="ResultCollector" testname="Aggregate Graph" 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>false</xml>
|
||||||
|
<fieldNames>true</fieldNames>
|
||||||
|
<responseHeaders>false</responseHeaders>
|
||||||
|
<requestHeaders>false</requestHeaders>
|
||||||
|
<responseDataOnError>false</responseDataOnError>
|
||||||
|
<saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
|
||||||
|
<assertionsResultsToSave>0</assertionsResultsToSave>
|
||||||
|
<bytes>true</bytes>
|
||||||
|
<sentBytes>true</sentBytes>
|
||||||
|
<threadCounts>true</threadCounts>
|
||||||
|
<idleTime>true</idleTime>
|
||||||
|
<connectTime>true</connectTime>
|
||||||
|
</value>
|
||||||
|
</objProp>
|
||||||
|
<stringProp name="filename"></stringProp>
|
||||||
|
</ResultCollector>
|
||||||
|
<hashTree/>
|
||||||
|
<ResultCollector guiclass="GraphVisualizer" testclass="ResultCollector" testname="Graph Results" 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>false</xml>
|
||||||
|
<fieldNames>true</fieldNames>
|
||||||
|
<responseHeaders>false</responseHeaders>
|
||||||
|
<requestHeaders>false</requestHeaders>
|
||||||
|
<responseDataOnError>false</responseDataOnError>
|
||||||
|
<saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage>
|
||||||
|
<assertionsResultsToSave>0</assertionsResultsToSave>
|
||||||
|
<bytes>true</bytes>
|
||||||
|
<sentBytes>true</sentBytes>
|
||||||
|
<threadCounts>true</threadCounts>
|
||||||
|
<idleTime>true</idleTime>
|
||||||
|
<connectTime>true</connectTime>
|
||||||
|
</value>
|
||||||
|
</objProp>
|
||||||
|
<stringProp name="filename"></stringProp>
|
||||||
|
</ResultCollector>
|
||||||
|
<hashTree/>
|
||||||
|
</hashTree>
|
||||||
|
<WorkBench guiclass="WorkBenchGui" testclass="WorkBench" testname="WorkBench" enabled="true">
|
||||||
|
<boolProp name="WorkBench.save">true</boolProp>
|
||||||
|
</WorkBench>
|
||||||
|
<hashTree/>
|
||||||
|
</hashTree>
|
||||||
|
</jmeterTestPlan>
|
412
tools/jmeter/src/main/resources/bin/saveservice.properties
Normal file
412
tools/jmeter/src/main/resources/bin/saveservice.properties
Normal file
@ -0,0 +1,412 @@
|
|||||||
|
#---------------------------------------------------------
|
||||||
|
# SAVESERVICE PROPERTIES - JMETER INTERNAL USE ONLY
|
||||||
|
#---------------------------------------------------------
|
||||||
|
|
||||||
|
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
## contributor license agreements. See the NOTICE file distributed with
|
||||||
|
## this work for additional information regarding copyright ownership.
|
||||||
|
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
## (the "License"); you may not use this file except in compliance with
|
||||||
|
## the License. You may obtain a copy of the License at
|
||||||
|
##
|
||||||
|
## http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
##
|
||||||
|
## Unless required by applicable law or agreed to in writing, software
|
||||||
|
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
## See the License for the specific language governing permissions and
|
||||||
|
## limitations under the License.
|
||||||
|
|
||||||
|
# This file is used to define how XStream (de-)serializes classnames
|
||||||
|
# in JMX test plan files.
|
||||||
|
|
||||||
|
# FOR JMETER INTERNAL USE ONLY
|
||||||
|
|
||||||
|
#---------------------------------------------------------
|
||||||
|
|
||||||
|
# N.B. To ensure backward compatibility, please do NOT change or delete any entries
|
||||||
|
|
||||||
|
# New entries can be added as necessary.
|
||||||
|
#
|
||||||
|
# Note that keys starting with an underscore are special,
|
||||||
|
# and are not used as aliases.
|
||||||
|
#
|
||||||
|
# Please keep the entries in alphabetical order within the sections
|
||||||
|
# to reduce the likelihood of duplicates
|
||||||
|
#
|
||||||
|
# version number of this file is now computed by a sha1 sum, so no need for
|
||||||
|
# an explicit _file_version property anymore.
|
||||||
|
#
|
||||||
|
# For this sha1 sum we ignore every newline character. It can be computed
|
||||||
|
# by the following command:
|
||||||
|
#
|
||||||
|
# cat bin/saveservice.properties | perl -ne 'chomp; print' | sha1sum
|
||||||
|
#
|
||||||
|
# Be aware, that every change in this file will change the sha1 sum!
|
||||||
|
#
|
||||||
|
# Conversion version (for JMX output files)
|
||||||
|
# Must be updated if the file has been changed since the previous release
|
||||||
|
# Format is:
|
||||||
|
# Save service version=JMeter version at which change occurred
|
||||||
|
# 1.7 = 2.1.1
|
||||||
|
# 1.8 = 2.1.2
|
||||||
|
# (Some version updates were missed here...)
|
||||||
|
# 2.0 = 2.3.1
|
||||||
|
# 2.1 = 2.3.2
|
||||||
|
# (Some version updates were missed here...)
|
||||||
|
# 2.2 = 2.6
|
||||||
|
# 2.3 = 2.7
|
||||||
|
# 2.4 = 2.9
|
||||||
|
# 2.5 = 2.10
|
||||||
|
# 2.6 = 2.11
|
||||||
|
# 2.7 = 2.12
|
||||||
|
# 2.8 = 2.13
|
||||||
|
# 2.9 = 2.14
|
||||||
|
# 3.1 = 3.1
|
||||||
|
# 3.2 = 3.2
|
||||||
|
_version=3.2
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Character set encoding used to read and write JMeter XML files and CSV results
|
||||||
|
#
|
||||||
|
_file_encoding=UTF-8
|
||||||
|
#
|
||||||
|
#---------------------------------------------------------
|
||||||
|
#
|
||||||
|
# The following properties are used to create aliases
|
||||||
|
# [Must all start with capital letter]
|
||||||
|
#
|
||||||
|
AccessLogSampler=org.apache.jmeter.protocol.http.sampler.AccessLogSampler
|
||||||
|
AjpSampler=org.apache.jmeter.protocol.http.sampler.AjpSampler
|
||||||
|
AjpSamplerGui=org.apache.jmeter.protocol.http.control.gui.AjpSamplerGui
|
||||||
|
AnchorModifier=org.apache.jmeter.protocol.http.modifier.AnchorModifier
|
||||||
|
AnchorModifierGui=org.apache.jmeter.protocol.http.modifier.gui.AnchorModifierGui
|
||||||
|
Argument=org.apache.jmeter.config.Argument
|
||||||
|
Arguments=org.apache.jmeter.config.Arguments
|
||||||
|
ArgumentsPanel=org.apache.jmeter.config.gui.ArgumentsPanel
|
||||||
|
AssertionGui=org.apache.jmeter.assertions.gui.AssertionGui
|
||||||
|
AssertionVisualizer=org.apache.jmeter.visualizers.AssertionVisualizer
|
||||||
|
AuthManager=org.apache.jmeter.protocol.http.control.AuthManager
|
||||||
|
Authorization=org.apache.jmeter.protocol.http.control.Authorization
|
||||||
|
AuthPanel=org.apache.jmeter.protocol.http.gui.AuthPanel
|
||||||
|
BackendListener=org.apache.jmeter.visualizers.backend.BackendListener
|
||||||
|
BackendListenerGui=org.apache.jmeter.visualizers.backend.BackendListenerGui
|
||||||
|
BeanShellAssertion=org.apache.jmeter.assertions.BeanShellAssertion
|
||||||
|
BeanShellAssertionGui=org.apache.jmeter.assertions.gui.BeanShellAssertionGui
|
||||||
|
BeanShellListener=org.apache.jmeter.visualizers.BeanShellListener
|
||||||
|
BeanShellPostProcessor=org.apache.jmeter.extractor.BeanShellPostProcessor
|
||||||
|
BeanShellPreProcessor=org.apache.jmeter.modifiers.BeanShellPreProcessor
|
||||||
|
BeanShellSampler=org.apache.jmeter.protocol.java.sampler.BeanShellSampler
|
||||||
|
BeanShellSamplerGui=org.apache.jmeter.protocol.java.control.gui.BeanShellSamplerGui
|
||||||
|
BeanShellTimer=org.apache.jmeter.timers.BeanShellTimer
|
||||||
|
BSFAssertion=org.apache.jmeter.assertions.BSFAssertion
|
||||||
|
BSFListener=org.apache.jmeter.visualizers.BSFListener
|
||||||
|
BSFPreProcessor=org.apache.jmeter.modifiers.BSFPreProcessor
|
||||||
|
BSFPostProcessor=org.apache.jmeter.extractor.BSFPostProcessor
|
||||||
|
BSFSampler=org.apache.jmeter.protocol.java.sampler.BSFSampler
|
||||||
|
BSFSamplerGui=org.apache.jmeter.protocol.java.control.gui.BSFSamplerGui
|
||||||
|
BSFTimer=org.apache.jmeter.timers.BSFTimer
|
||||||
|
CacheManager=org.apache.jmeter.protocol.http.control.CacheManager
|
||||||
|
CacheManagerGui=org.apache.jmeter.protocol.http.gui.CacheManagerGui
|
||||||
|
CompareAssertion=org.apache.jmeter.assertions.CompareAssertion
|
||||||
|
ComparisonVisualizer=org.apache.jmeter.visualizers.ComparisonVisualizer
|
||||||
|
ConfigTestElement=org.apache.jmeter.config.ConfigTestElement
|
||||||
|
ConstantThroughputTimer=org.apache.jmeter.timers.ConstantThroughputTimer
|
||||||
|
ConstantTimer=org.apache.jmeter.timers.ConstantTimer
|
||||||
|
ConstantTimerGui=org.apache.jmeter.timers.gui.ConstantTimerGui
|
||||||
|
Cookie=org.apache.jmeter.protocol.http.control.Cookie
|
||||||
|
CookieManager=org.apache.jmeter.protocol.http.control.CookieManager
|
||||||
|
CookiePanel=org.apache.jmeter.protocol.http.gui.CookiePanel
|
||||||
|
CounterConfig=org.apache.jmeter.modifiers.CounterConfig
|
||||||
|
CriticalSectionController=org.apache.jmeter.control.CriticalSectionController
|
||||||
|
CriticalSectionControllerGui=org.apache.jmeter.control.gui.CriticalSectionControllerGui
|
||||||
|
CounterConfigGui=org.apache.jmeter.modifiers.gui.CounterConfigGui
|
||||||
|
CSVDataSet=org.apache.jmeter.config.CSVDataSet
|
||||||
|
DebugPostProcessor=org.apache.jmeter.extractor.DebugPostProcessor
|
||||||
|
DebugSampler=org.apache.jmeter.sampler.DebugSampler
|
||||||
|
# removed in 3.1, class was deleted in r1763837
|
||||||
|
DistributionGraphVisualizer=org.apache.jmeter.visualizers.DistributionGraphVisualizer
|
||||||
|
DNSCacheManager=org.apache.jmeter.protocol.http.control.DNSCacheManager
|
||||||
|
DNSCachePanel=org.apache.jmeter.protocol.http.gui.DNSCachePanel
|
||||||
|
DurationAssertion=org.apache.jmeter.assertions.DurationAssertion
|
||||||
|
DurationAssertionGui=org.apache.jmeter.assertions.gui.DurationAssertionGui
|
||||||
|
# Should really have been defined as floatProp to agree with other properties
|
||||||
|
# No point changing this now
|
||||||
|
FloatProperty=org.apache.jmeter.testelement.property.FloatProperty
|
||||||
|
ForeachController=org.apache.jmeter.control.ForeachController
|
||||||
|
ForeachControlPanel=org.apache.jmeter.control.gui.ForeachControlPanel
|
||||||
|
FtpConfigGui=org.apache.jmeter.protocol.ftp.config.gui.FtpConfigGui
|
||||||
|
FTPSampler=org.apache.jmeter.protocol.ftp.sampler.FTPSampler
|
||||||
|
FtpTestSamplerGui=org.apache.jmeter.protocol.ftp.control.gui.FtpTestSamplerGui
|
||||||
|
GaussianRandomTimer=org.apache.jmeter.timers.GaussianRandomTimer
|
||||||
|
GaussianRandomTimerGui=org.apache.jmeter.timers.gui.GaussianRandomTimerGui
|
||||||
|
GenericController=org.apache.jmeter.control.GenericController
|
||||||
|
GraphAccumVisualizer=org.apache.jmeter.visualizers.GraphAccumVisualizer
|
||||||
|
GraphVisualizer=org.apache.jmeter.visualizers.GraphVisualizer
|
||||||
|
Header=org.apache.jmeter.protocol.http.control.Header
|
||||||
|
HeaderManager=org.apache.jmeter.protocol.http.control.HeaderManager
|
||||||
|
HeaderPanel=org.apache.jmeter.protocol.http.gui.HeaderPanel
|
||||||
|
HTMLAssertion=org.apache.jmeter.assertions.HTMLAssertion
|
||||||
|
HTMLAssertionGui=org.apache.jmeter.assertions.gui.HTMLAssertionGui
|
||||||
|
HTTPArgument=org.apache.jmeter.protocol.http.util.HTTPArgument
|
||||||
|
HTTPArgumentsPanel=org.apache.jmeter.protocol.http.gui.HTTPArgumentsPanel
|
||||||
|
HTTPFileArg=org.apache.jmeter.protocol.http.util.HTTPFileArg
|
||||||
|
HTTPFileArgs=org.apache.jmeter.protocol.http.util.HTTPFileArgs
|
||||||
|
HttpDefaultsGui=org.apache.jmeter.protocol.http.config.gui.HttpDefaultsGui
|
||||||
|
HtmlExtractor=org.apache.jmeter.extractor.HtmlExtractor
|
||||||
|
HtmlExtractorGui=org.apache.jmeter.extractor.gui.HtmlExtractorGui
|
||||||
|
# removed in r1039684, probably not released. Not present in r322831 or since.
|
||||||
|
#HttpGenericSampler=org.apache.jmeter.protocol.http.sampler.HttpGenericSampler
|
||||||
|
# removed in r1039684, probably not released. Not present in r322831 or since.
|
||||||
|
#HttpGenericSamplerGui=org.apache.jmeter.protocol.http.control.gui.HttpGenericSamplerGui
|
||||||
|
HttpMirrorControl=org.apache.jmeter.protocol.http.control.HttpMirrorControl
|
||||||
|
HttpMirrorControlGui=org.apache.jmeter.protocol.http.control.gui.HttpMirrorControlGui
|
||||||
|
# r397955 - removed test class. Keep as commented entry for info only.
|
||||||
|
#HTTPNullSampler=org.apache.jmeter.protocol.http.sampler.HTTPNullSampler
|
||||||
|
# Merge previous 2 HTTP samplers into one
|
||||||
|
HTTPSampler_=org.apache.jmeter.protocol.http.sampler.HTTPSampler
|
||||||
|
HTTPSampler2_=org.apache.jmeter.protocol.http.sampler.HTTPSampler2
|
||||||
|
HTTPSamplerProxy,HTTPSampler,HTTPSampler2=org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy
|
||||||
|
# Merge GUIs
|
||||||
|
HttpTestSampleGui,HttpTestSampleGui2=org.apache.jmeter.protocol.http.control.gui.HttpTestSampleGui
|
||||||
|
#HttpTestSampleGui2=org.apache.jmeter.protocol.http.control.gui.HttpTestSampleGui2
|
||||||
|
IfController=org.apache.jmeter.control.IfController
|
||||||
|
IfControllerPanel=org.apache.jmeter.control.gui.IfControllerPanel
|
||||||
|
IncludeController=org.apache.jmeter.control.IncludeController
|
||||||
|
IncludeControllerGui=org.apache.jmeter.control.gui.IncludeControllerGui
|
||||||
|
InterleaveControl=org.apache.jmeter.control.InterleaveControl
|
||||||
|
InterleaveControlGui=org.apache.jmeter.control.gui.InterleaveControlGui
|
||||||
|
JavaConfig=org.apache.jmeter.protocol.java.config.JavaConfig
|
||||||
|
JavaConfigGui=org.apache.jmeter.protocol.java.config.gui.JavaConfigGui
|
||||||
|
JavaSampler=org.apache.jmeter.protocol.java.sampler.JavaSampler
|
||||||
|
JavaTest=org.apache.jmeter.protocol.java.test.JavaTest
|
||||||
|
JavaTestSamplerGui=org.apache.jmeter.protocol.java.control.gui.JavaTestSamplerGui
|
||||||
|
JDBCDataSource=org.apache.jmeter.protocol.jdbc.config.DataSourceElement
|
||||||
|
JDBCPostProcessor=org.apache.jmeter.protocol.jdbc.processor.JDBCPostProcessor
|
||||||
|
JDBCPreProcessor=org.apache.jmeter.protocol.jdbc.processor.JDBCPreProcessor
|
||||||
|
JDBCSampler=org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler
|
||||||
|
# Renamed to JMSSamplerGui; keep original entry for backwards compatibility
|
||||||
|
JMSConfigGui=org.apache.jmeter.protocol.jms.control.gui.JMSConfigGui
|
||||||
|
JMSProperties=org.apache.jmeter.protocol.jms.sampler.JMSProperties
|
||||||
|
JMSProperty=org.apache.jmeter.protocol.jms.sampler.JMSProperty
|
||||||
|
JMSPublisherGui=org.apache.jmeter.protocol.jms.control.gui.JMSPublisherGui
|
||||||
|
JMSSampler=org.apache.jmeter.protocol.jms.sampler.JMSSampler
|
||||||
|
JMSSamplerGui=org.apache.jmeter.protocol.jms.control.gui.JMSSamplerGui
|
||||||
|
JMSSubscriberGui=org.apache.jmeter.protocol.jms.control.gui.JMSSubscriberGui
|
||||||
|
JSONPostProcessor=org.apache.jmeter.extractor.json.jsonpath.JSONPostProcessor
|
||||||
|
JSONPostProcessorGui=org.apache.jmeter.extractor.json.jsonpath.gui.JSONPostProcessorGui
|
||||||
|
# Removed in r545311 as Jndi no longer present; keep for compat.
|
||||||
|
JndiDefaultsGui=org.apache.jmeter.protocol.jms.control.gui.JndiDefaultsGui
|
||||||
|
JSR223Assertion=org.apache.jmeter.assertions.JSR223Assertion
|
||||||
|
JSR223Listener=org.apache.jmeter.visualizers.JSR223Listener
|
||||||
|
JSR223PostProcessor=org.apache.jmeter.extractor.JSR223PostProcessor
|
||||||
|
JSR223PreProcessor=org.apache.jmeter.modifiers.JSR223PreProcessor
|
||||||
|
JSR223Sampler=org.apache.jmeter.protocol.java.sampler.JSR223Sampler
|
||||||
|
JSR223Timer=org.apache.jmeter.timers.JSR223Timer
|
||||||
|
JUnitSampler=org.apache.jmeter.protocol.java.sampler.JUnitSampler
|
||||||
|
JUnitTestSamplerGui=org.apache.jmeter.protocol.java.control.gui.JUnitTestSamplerGui
|
||||||
|
KeystoreConfig=org.apache.jmeter.config.KeystoreConfig
|
||||||
|
LDAPArgument=org.apache.jmeter.protocol.ldap.config.gui.LDAPArgument
|
||||||
|
LDAPArguments=org.apache.jmeter.protocol.ldap.config.gui.LDAPArguments
|
||||||
|
LDAPArgumentsPanel=org.apache.jmeter.protocol.ldap.config.gui.LDAPArgumentsPanel
|
||||||
|
LdapConfigGui=org.apache.jmeter.protocol.ldap.config.gui.LdapConfigGui
|
||||||
|
LdapExtConfigGui=org.apache.jmeter.protocol.ldap.config.gui.LdapExtConfigGui
|
||||||
|
LDAPExtSampler=org.apache.jmeter.protocol.ldap.sampler.LDAPExtSampler
|
||||||
|
LdapExtTestSamplerGui=org.apache.jmeter.protocol.ldap.control.gui.LdapExtTestSamplerGui
|
||||||
|
LDAPSampler=org.apache.jmeter.protocol.ldap.sampler.LDAPSampler
|
||||||
|
LdapTestSamplerGui=org.apache.jmeter.protocol.ldap.control.gui.LdapTestSamplerGui
|
||||||
|
LogicControllerGui=org.apache.jmeter.control.gui.LogicControllerGui
|
||||||
|
LoginConfig=org.apache.jmeter.config.LoginConfig
|
||||||
|
LoginConfigGui=org.apache.jmeter.config.gui.LoginConfigGui
|
||||||
|
LoopController=org.apache.jmeter.control.LoopController
|
||||||
|
LoopControlPanel=org.apache.jmeter.control.gui.LoopControlPanel
|
||||||
|
MailerModel=org.apache.jmeter.reporters.MailerModel
|
||||||
|
MailerResultCollector=org.apache.jmeter.reporters.MailerResultCollector
|
||||||
|
MailerVisualizer=org.apache.jmeter.visualizers.MailerVisualizer
|
||||||
|
MailReaderSampler=org.apache.jmeter.protocol.mail.sampler.MailReaderSampler
|
||||||
|
MailReaderSamplerGui=org.apache.jmeter.protocol.mail.sampler.gui.MailReaderSamplerGui
|
||||||
|
MD5HexAssertion=org.apache.jmeter.assertions.MD5HexAssertion
|
||||||
|
MD5HexAssertionGUI=org.apache.jmeter.assertions.gui.MD5HexAssertionGUI
|
||||||
|
ModuleController=org.apache.jmeter.control.ModuleController
|
||||||
|
ModuleControllerGui=org.apache.jmeter.control.gui.ModuleControllerGui
|
||||||
|
MongoScriptSampler=org.apache.jmeter.protocol.mongodb.sampler.MongoScriptSampler
|
||||||
|
MongoSourceElement=org.apache.jmeter.protocol.mongodb.config.MongoSourceElement
|
||||||
|
|
||||||
|
# removed in 3.2, class was deleted in r
|
||||||
|
MonitorHealthVisualizer=org.apache.jmeter.visualizers.MonitorHealthVisualizer
|
||||||
|
|
||||||
|
NamePanel=org.apache.jmeter.gui.NamePanel
|
||||||
|
ObsoleteGui=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
OnceOnlyController=org.apache.jmeter.control.OnceOnlyController
|
||||||
|
OnceOnlyControllerGui=org.apache.jmeter.control.gui.OnceOnlyControllerGui
|
||||||
|
# removed in 3.0, class was deleted in r1722962
|
||||||
|
ParamMask=org.apache.jmeter.protocol.http.modifier.ParamMask
|
||||||
|
# removed in 3.0, class was deleted in r1722757
|
||||||
|
ParamModifier=org.apache.jmeter.protocol.http.modifier.ParamModifier
|
||||||
|
# removed in 3.0, class was deleted in r1722757
|
||||||
|
ParamModifierGui=org.apache.jmeter.protocol.http.modifier.gui.ParamModifierGui
|
||||||
|
PoissonRandomTimer=org.apache.jmeter.timers.PoissonRandomTimer
|
||||||
|
PoissonRandomTimerGui=org.apache.jmeter.timers.gui.PoissonRandomTimerGui
|
||||||
|
PropertyControlGui=org.apache.jmeter.visualizers.PropertyControlGui
|
||||||
|
ProxyControl=org.apache.jmeter.protocol.http.proxy.ProxyControl
|
||||||
|
ProxyControlGui=org.apache.jmeter.protocol.http.proxy.gui.ProxyControlGui
|
||||||
|
PublisherSampler=org.apache.jmeter.protocol.jms.sampler.PublisherSampler
|
||||||
|
RandomControlGui=org.apache.jmeter.control.gui.RandomControlGui
|
||||||
|
RandomController=org.apache.jmeter.control.RandomController
|
||||||
|
RandomOrderController=org.apache.jmeter.control.RandomOrderController
|
||||||
|
RandomOrderControllerGui=org.apache.jmeter.control.gui.RandomOrderControllerGui
|
||||||
|
RandomVariableConfig=org.apache.jmeter.config.RandomVariableConfig
|
||||||
|
RecordController=org.apache.jmeter.protocol.http.control.gui.RecordController
|
||||||
|
RecordingController=org.apache.jmeter.protocol.http.control.RecordingController
|
||||||
|
# removed in r1039684, class was deleted in r580452
|
||||||
|
ReflectionThreadGroup=org.apache.jmeter.threads.ReflectionThreadGroup
|
||||||
|
RegexExtractor=org.apache.jmeter.extractor.RegexExtractor
|
||||||
|
RegexExtractorGui=org.apache.jmeter.extractor.gui.RegexExtractorGui
|
||||||
|
RegExUserParameters=org.apache.jmeter.protocol.http.modifier.RegExUserParameters
|
||||||
|
RegExUserParametersGui=org.apache.jmeter.protocol.http.modifier.gui.RegExUserParametersGui
|
||||||
|
RemoteListenerWrapper=org.apache.jmeter.samplers.RemoteListenerWrapper
|
||||||
|
RemoteSampleListenerWrapper=org.apache.jmeter.samplers.RemoteSampleListenerWrapper
|
||||||
|
RemoteTestListenerWrapper=org.apache.jmeter.samplers.RemoteTestListenerWrapper
|
||||||
|
RemoteThreadsListenerWrapper=org.apache.jmeter.threads.RemoteThreadsListenerWrapper
|
||||||
|
ResponseAssertion=org.apache.jmeter.assertions.ResponseAssertion
|
||||||
|
RespTimeGraphVisualizer=org.apache.jmeter.visualizers.RespTimeGraphVisualizer
|
||||||
|
ResultAction=org.apache.jmeter.reporters.ResultAction
|
||||||
|
ResultActionGui=org.apache.jmeter.reporters.gui.ResultActionGui
|
||||||
|
ResultCollector=org.apache.jmeter.reporters.ResultCollector
|
||||||
|
ResultSaver=org.apache.jmeter.reporters.ResultSaver
|
||||||
|
ResultSaverGui=org.apache.jmeter.reporters.gui.ResultSaverGui
|
||||||
|
RunTime=org.apache.jmeter.control.RunTime
|
||||||
|
RunTimeGui=org.apache.jmeter.control.gui.RunTimeGui
|
||||||
|
SampleSaveConfiguration=org.apache.jmeter.samplers.SampleSaveConfiguration
|
||||||
|
SampleTimeout=org.apache.jmeter.modifiers.SampleTimeout
|
||||||
|
SampleTimeoutGui=org.apache.jmeter.modifiers.gui.SampleTimeoutGui
|
||||||
|
SimpleConfigGui=org.apache.jmeter.config.gui.SimpleConfigGui
|
||||||
|
SimpleDataWriter=org.apache.jmeter.visualizers.SimpleDataWriter
|
||||||
|
SizeAssertion=org.apache.jmeter.assertions.SizeAssertion
|
||||||
|
SizeAssertionGui=org.apache.jmeter.assertions.gui.SizeAssertionGui
|
||||||
|
SMIMEAssertion=org.apache.jmeter.assertions.SMIMEAssertionTestElement
|
||||||
|
SMIMEAssertionGui=org.apache.jmeter.assertions.gui.SMIMEAssertionGui
|
||||||
|
SmtpSampler=org.apache.jmeter.protocol.smtp.sampler.SmtpSampler
|
||||||
|
SmtpSamplerGui=org.apache.jmeter.protocol.smtp.sampler.gui.SmtpSamplerGui
|
||||||
|
|
||||||
|
# removed in 3.2, class was deleted in r
|
||||||
|
SoapSampler=org.apache.jmeter.protocol.http.sampler.SoapSampler
|
||||||
|
# removed in 3.2, class was deleted in r
|
||||||
|
SoapSamplerGui=org.apache.jmeter.protocol.http.control.gui.SoapSamplerGui
|
||||||
|
|
||||||
|
# removed in 3.1, class was deleted in r1763837
|
||||||
|
SplineVisualizer=org.apache.jmeter.visualizers.SplineVisualizer
|
||||||
|
# Originally deleted in r397955 as class is obsolete; needed for compat.
|
||||||
|
SqlConfigGui=org.apache.jmeter.protocol.jdbc.config.gui.SqlConfigGui
|
||||||
|
StaticHost=org.apache.jmeter.protocol.http.control.StaticHost
|
||||||
|
StatGraphVisualizer=org.apache.jmeter.visualizers.StatGraphVisualizer
|
||||||
|
StatVisualizer=org.apache.jmeter.visualizers.StatVisualizer
|
||||||
|
SubscriberSampler=org.apache.jmeter.protocol.jms.sampler.SubscriberSampler
|
||||||
|
SubstitutionElement=org.apache.jmeter.assertions.SubstitutionElement
|
||||||
|
Summariser=org.apache.jmeter.reporters.Summariser
|
||||||
|
SummariserGui=org.apache.jmeter.reporters.gui.SummariserGui
|
||||||
|
SummaryReport=org.apache.jmeter.visualizers.SummaryReport
|
||||||
|
SwitchController=org.apache.jmeter.control.SwitchController
|
||||||
|
SwitchControllerGui=org.apache.jmeter.control.gui.SwitchControllerGui
|
||||||
|
SyncTimer=org.apache.jmeter.timers.SyncTimer
|
||||||
|
SystemSampler=org.apache.jmeter.protocol.system.SystemSampler
|
||||||
|
SystemSamplerGui=org.apache.jmeter.protocol.system.gui.SystemSamplerGui
|
||||||
|
TableVisualizer=org.apache.jmeter.visualizers.TableVisualizer
|
||||||
|
TCPConfigGui=org.apache.jmeter.protocol.tcp.config.gui.TCPConfigGui
|
||||||
|
TCPSampler=org.apache.jmeter.protocol.tcp.sampler.TCPSampler
|
||||||
|
TCPSamplerGui=org.apache.jmeter.protocol.tcp.control.gui.TCPSamplerGui
|
||||||
|
TestAction=org.apache.jmeter.sampler.TestAction
|
||||||
|
TestActionGui=org.apache.jmeter.sampler.gui.TestActionGui
|
||||||
|
TestBeanGUI=org.apache.jmeter.testbeans.gui.TestBeanGUI
|
||||||
|
TestFragmentController=org.apache.jmeter.control.TestFragmentController
|
||||||
|
TestFragmentControllerGui=org.apache.jmeter.control.gui.TestFragmentControllerGui
|
||||||
|
TestPlan=org.apache.jmeter.testelement.TestPlan
|
||||||
|
TestPlanGui=org.apache.jmeter.control.gui.TestPlanGui
|
||||||
|
ThreadGroup=org.apache.jmeter.threads.ThreadGroup
|
||||||
|
ThreadGroupGui=org.apache.jmeter.threads.gui.ThreadGroupGui
|
||||||
|
PostThreadGroup=org.apache.jmeter.threads.PostThreadGroup
|
||||||
|
PostThreadGroupGui=org.apache.jmeter.threads.gui.PostThreadGroupGui
|
||||||
|
SetupThreadGroup=org.apache.jmeter.threads.SetupThreadGroup
|
||||||
|
SetupThreadGroupGui=org.apache.jmeter.threads.gui.SetupThreadGroupGui
|
||||||
|
ThroughputController=org.apache.jmeter.control.ThroughputController
|
||||||
|
ThroughputControllerGui=org.apache.jmeter.control.gui.ThroughputControllerGui
|
||||||
|
TransactionController=org.apache.jmeter.control.TransactionController
|
||||||
|
TransactionControllerGui=org.apache.jmeter.control.gui.TransactionControllerGui
|
||||||
|
TransactionSampler=org.apache.jmeter.control.TransactionSampler
|
||||||
|
UniformRandomTimer=org.apache.jmeter.timers.UniformRandomTimer
|
||||||
|
UniformRandomTimerGui=org.apache.jmeter.timers.gui.UniformRandomTimerGui
|
||||||
|
URLRewritingModifier=org.apache.jmeter.protocol.http.modifier.URLRewritingModifier
|
||||||
|
URLRewritingModifierGui=org.apache.jmeter.protocol.http.modifier.gui.URLRewritingModifierGui
|
||||||
|
UserParameterModifier=org.apache.jmeter.protocol.http.modifier.UserParameterModifier
|
||||||
|
UserParameterModifierGui=org.apache.jmeter.protocol.http.modifier.gui.UserParameterModifierGui
|
||||||
|
UserParameters=org.apache.jmeter.modifiers.UserParameters
|
||||||
|
UserParametersGui=org.apache.jmeter.modifiers.gui.UserParametersGui
|
||||||
|
ViewResultsFullVisualizer=org.apache.jmeter.visualizers.ViewResultsFullVisualizer
|
||||||
|
# removed in 3.0, class was deleted in r1722757
|
||||||
|
WebServiceSampler=org.apache.jmeter.protocol.http.sampler.WebServiceSampler
|
||||||
|
# removed in 3.0, class was deleted in r1722757
|
||||||
|
WebServiceSamplerGui=org.apache.jmeter.protocol.http.control.gui.WebServiceSamplerGui
|
||||||
|
WhileController=org.apache.jmeter.control.WhileController
|
||||||
|
WhileControllerGui=org.apache.jmeter.control.gui.WhileControllerGui
|
||||||
|
WorkBench=org.apache.jmeter.testelement.WorkBench
|
||||||
|
WorkBenchGui=org.apache.jmeter.control.gui.WorkBenchGui
|
||||||
|
XMLAssertion=org.apache.jmeter.assertions.XMLAssertion
|
||||||
|
XMLAssertionGui=org.apache.jmeter.assertions.gui.XMLAssertionGui
|
||||||
|
XMLSchemaAssertion=org.apache.jmeter.assertions.XMLSchemaAssertion
|
||||||
|
XMLSchemaAssertionGUI=org.apache.jmeter.assertions.gui.XMLSchemaAssertionGUI
|
||||||
|
XPathAssertion=org.apache.jmeter.assertions.XPathAssertion
|
||||||
|
XPathAssertionGui=org.apache.jmeter.assertions.gui.XPathAssertionGui
|
||||||
|
XPathExtractor=org.apache.jmeter.extractor.XPathExtractor
|
||||||
|
XPathExtractorGui=org.apache.jmeter.extractor.gui.XPathExtractorGui
|
||||||
|
#
|
||||||
|
# Properties - all start with lower case letter and end with Prop
|
||||||
|
#
|
||||||
|
boolProp=org.apache.jmeter.testelement.property.BooleanProperty
|
||||||
|
collectionProp=org.apache.jmeter.testelement.property.CollectionProperty
|
||||||
|
doubleProp=org.apache.jmeter.testelement.property.DoubleProperty
|
||||||
|
elementProp=org.apache.jmeter.testelement.property.TestElementProperty
|
||||||
|
# see above - already defined as FloatProperty
|
||||||
|
#floatProp=org.apache.jmeter.testelement.property.FloatProperty
|
||||||
|
intProp=org.apache.jmeter.testelement.property.IntegerProperty
|
||||||
|
longProp=org.apache.jmeter.testelement.property.LongProperty
|
||||||
|
mapProp=org.apache.jmeter.testelement.property.MapProperty
|
||||||
|
objProp=org.apache.jmeter.testelement.property.ObjectProperty
|
||||||
|
stringProp=org.apache.jmeter.testelement.property.StringProperty
|
||||||
|
#
|
||||||
|
# Other - must start with a lower case letter (and not end with Prop)
|
||||||
|
# (otherwise they could clash with the initial set of aliases)
|
||||||
|
#
|
||||||
|
hashTree=org.apache.jorphan.collections.ListedHashTree
|
||||||
|
jmeterTestPlan=org.apache.jmeter.save.ScriptWrapper
|
||||||
|
sample=org.apache.jmeter.samplers.SampleResult
|
||||||
|
httpSample=org.apache.jmeter.protocol.http.sampler.HTTPSampleResult
|
||||||
|
statSample=org.apache.jmeter.samplers.StatisticalSampleResult
|
||||||
|
testResults=org.apache.jmeter.save.TestResultWrapper
|
||||||
|
assertionResult=org.apache.jmeter.assertions.AssertionResult
|
||||||
|
|
||||||
|
# removed in 3.2, class was deleted in r
|
||||||
|
monitorStats=org.apache.jmeter.visualizers.MonitorStats
|
||||||
|
sampleEvent=org.apache.jmeter.samplers.SampleEvent
|
||||||
|
#
|
||||||
|
# Converters to register. Must start line with '_'
|
||||||
|
# If the converter is a collection of subitems, set equal to "collection"
|
||||||
|
# If the converter needs to know the class mappings but is not a collection of
|
||||||
|
# subitems, set it equal to "mapping"
|
||||||
|
_org.apache.jmeter.protocol.http.sampler.HTTPSamplerBaseConverter=collection
|
||||||
|
_org.apache.jmeter.protocol.http.util.HTTPResultConverter=collection
|
||||||
|
_org.apache.jmeter.save.converters.BooleanPropertyConverter=
|
||||||
|
_org.apache.jmeter.save.converters.IntegerPropertyConverter=
|
||||||
|
_org.apache.jmeter.save.converters.LongPropertyConverter=
|
||||||
|
_org.apache.jmeter.save.converters.MultiPropertyConverter=collection
|
||||||
|
_org.apache.jmeter.save.converters.SampleEventConverter=
|
||||||
|
_org.apache.jmeter.save.converters.SampleResultConverter=collection
|
||||||
|
_org.apache.jmeter.save.converters.SampleSaveConfigurationConverter=collection
|
||||||
|
_org.apache.jmeter.save.converters.StringPropertyConverter=
|
||||||
|
_org.apache.jmeter.save.converters.HashTreeConverter=collection
|
||||||
|
_org.apache.jmeter.save.converters.TestElementConverter=collection
|
||||||
|
_org.apache.jmeter.save.converters.TestElementPropertyConverter=collection
|
||||||
|
_org.apache.jmeter.save.converters.TestResultWrapperConverter=collection
|
||||||
|
_org.apache.jmeter.save.ScriptWrapperConverter=mapping
|
||||||
|
#
|
||||||
|
# Remember to update the _version entry
|
||||||
|
#
|
123
tools/jmeter/src/main/resources/bin/upgrade.properties
Normal file
123
tools/jmeter/src/main/resources/bin/upgrade.properties
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
# Class, property and value upgrade equivalences.
|
||||||
|
|
||||||
|
## Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
## contributor license agreements. See the NOTICE file distributed with
|
||||||
|
## this work for additional information regarding copyright ownership.
|
||||||
|
## The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
## (the "License"); you may not use this file except in compliance with
|
||||||
|
## the License. You may obtain a copy of the License at
|
||||||
|
##
|
||||||
|
## http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
##
|
||||||
|
## Unless required by applicable law or agreed to in writing, software
|
||||||
|
## distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
## See the License for the specific language governing permissions and
|
||||||
|
## limitations under the License.
|
||||||
|
|
||||||
|
#
|
||||||
|
# Format is as follows --
|
||||||
|
# for renamed test element & GUI classes:
|
||||||
|
# old.class.Name=new.class.Name
|
||||||
|
# old.class.Name|guiClassName=new.class.Name
|
||||||
|
# (e.g. for ConfigTestElement)
|
||||||
|
#
|
||||||
|
# for renamed / deleted properties:
|
||||||
|
# class.Name/Old.propertyName=newPropertyName
|
||||||
|
# if newPropertyName is omitted, then property is deleted
|
||||||
|
#
|
||||||
|
# for renamed values:
|
||||||
|
# old.class.Name.old.propertyName/oldValue=newValue
|
||||||
|
#
|
||||||
|
|
||||||
|
org.apache.jmeter.protocol.http.config.gui.UrlConfigGui=org.apache.jmeter.protocol.http.config.gui.HttpDefaultsGui
|
||||||
|
org.apache.jmeter.assertions.Assertion=org.apache.jmeter.assertions.ResponseAssertion
|
||||||
|
org.apache.jmeter.protocol.http.sampler.HTTPSamplerFull=org.apache.jmeter.protocol.http.sampler.HTTPSampler
|
||||||
|
org.apache.jmeter.control.gui.RecordController=org.apache.jmeter.protocol.http.control.gui.RecordController
|
||||||
|
|
||||||
|
org.apache.jmeter.timers.gui.ConstantThroughputTimerGui=org.apache.jmeter.testbeans.gui.TestBeanGUI
|
||||||
|
org.apache.jmeter.timers.ConstantThroughputTimer/ConstantThroughputTimer.throughput=throughput
|
||||||
|
|
||||||
|
org.apache.jmeter.protocol.jdbc.control.gui.JdbcTestSampleGui=org.apache.jmeter.testbeans.gui.TestBeanGUI
|
||||||
|
org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler/JDBCSampler.query=query
|
||||||
|
#org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler.JDBCSampler.dataSource/NULL=
|
||||||
|
|
||||||
|
# Convert DBconfig
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.gui.DbConfigGui=org.apache.jmeter.testbeans.gui.TestBeanGUI
|
||||||
|
org.apache.jmeter.config.ConfigTestElement|org.apache.jmeter.protocol.jdbc.config.gui.DbConfigGui=org.apache.jmeter.protocol.jdbc.config.DataSourceElement
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.url=dbUrl
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.driver=driver
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.query=query
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.DataSourceElement/ConfigTestElement.username=username
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.DataSourceElement/ConfigTestElement.password=password
|
||||||
|
|
||||||
|
# Convert PoolConfig
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.gui.PoolConfigGui=org.apache.jmeter.testbeans.gui.TestBeanGUI
|
||||||
|
org.apache.jmeter.config.ConfigTestElement|org.apache.jmeter.protocol.jdbc.config.gui.PoolConfigGui=org.apache.jmeter.protocol.jdbc.config.DataSourceElement
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.connections=
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.connPoolClass=
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.maxuse=poolMax
|
||||||
|
|
||||||
|
# SQL Config
|
||||||
|
org.apache.jmeter.config.ConfigTestElement/JDBCSampler.query=query
|
||||||
|
org.apache.jmeter.protocol.http.control.Header/TestElement.name=Header.name
|
||||||
|
|
||||||
|
# Upgrade AccessLogSampler
|
||||||
|
org.apache.jmeter.protocol.http.control.gui.AccessLogSamplerGui=org.apache.jmeter.testbeans.gui.TestBeanGUI
|
||||||
|
org.apache.jmeter.protocol.http.sampler.AccessLogSampler/AccessLogSampler.log_file=logFile
|
||||||
|
org.apache.jmeter.protocol.http.sampler.AccessLogSampler/HTTPSampler.port=portString
|
||||||
|
#Is the following used now?
|
||||||
|
#org.apache.jmeter.protocol.http.sampler.AccessLogSampler/AccessLogSampler.generator_class_name=
|
||||||
|
#Looks to be a new field
|
||||||
|
#filterClassName
|
||||||
|
org.apache.jmeter.protocol.http.sampler.AccessLogSampler/HTTPSampler.domain=domain
|
||||||
|
org.apache.jmeter.protocol.http.sampler.AccessLogSampler/AccessLogSampler.parser_class_name=parserClassName
|
||||||
|
org.apache.jmeter.protocol.http.sampler.AccessLogSampler/HTTPSampler.image_parser=imageParsing
|
||||||
|
|
||||||
|
# Renamed class
|
||||||
|
org.apache.jmeter.protocol.jms.control.gui.JMSConfigGui=org.apache.jmeter.protocol.jms.control.gui.JMSSamplerGui
|
||||||
|
|
||||||
|
# These classes have been deleted; there's no defined replacement
|
||||||
|
org.apache.jmeter.protocol.jdbc.config.gui.SqlConfigGui=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
org.apache.jmeter.protocol.jms.control.gui.JndiDefaultsGui=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
# Should probably map to something other than ObsoleteGui...
|
||||||
|
org.apache.jmeter.threads.ReflectionThreadGroup=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
|
||||||
|
# Convert BSFSamplerGui
|
||||||
|
org.apache.jmeter.protocol.java.control.gui.BSFSamplerGui=org.apache.jmeter.testbeans.gui.TestBeanGUI
|
||||||
|
org.apache.jmeter.protocol.java.sampler.BSFSampler/BSFSampler.filename=filename
|
||||||
|
org.apache.jmeter.protocol.java.sampler.BSFSampler/BSFSampler.language=scriptLanguage
|
||||||
|
org.apache.jmeter.protocol.java.sampler.BSFSampler/BSFSampler.parameters=parameters
|
||||||
|
org.apache.jmeter.protocol.java.sampler.BSFSampler/BSFSampler.query=script
|
||||||
|
|
||||||
|
# Obsolete Http user Parameters modifier test element
|
||||||
|
# Note: ConfigTestElement is the test element associated with ObsoleteGui
|
||||||
|
org.apache.jmeter.protocol.http.modifier.UserParameterModifier=org.apache.jmeter.config.ConfigTestElement
|
||||||
|
org.apache.jmeter.protocol.http.modifier.gui.UserParameterModifierGui=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
|
||||||
|
# Obsolete Graph Full Results listener
|
||||||
|
org.apache.jmeter.visualizers.GraphAccumVisualizer=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
# removed in 3.0, class was deleted in r1722757
|
||||||
|
org.apache.jmeter.protocol.http.sampler.WebServiceSampler=org.apache.jmeter.config.ConfigTestElement
|
||||||
|
# removed in 3.0, class was deleted in r1722757
|
||||||
|
org.apache.jmeter.protocol.http.control.gui.WebServiceSamplerGui=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
# removed in 3.0, class was deleted in r1722757
|
||||||
|
org.apache.jmeter.protocol.http.modifier.ParamModifier=org.apache.jmeter.config.ConfigTestElement
|
||||||
|
# removed in 3.0, class was deleted in r1722962
|
||||||
|
org.apache.jmeter.protocol.http.modifier.ParamMask=org.apache.jmeter.config.ConfigTestElement
|
||||||
|
# removed in 3.0, class was deleted in r1722757
|
||||||
|
org.apache.jmeter.protocol.http.modifier.gui.ParamModifierGui=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
|
||||||
|
# removed in 3.1, class was deleted in r1774947
|
||||||
|
org.apache.jmeter.visualizers.SplineVisualizer=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
# removed in 3.1 class was deleted in r1763837
|
||||||
|
org.apache.jmeter.visualizers.DistributionGraphVisualizer=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
|
||||||
|
# removed in 3.2 class was deleted in r1771608
|
||||||
|
org.apache.jmeter.visualizers.MonitorStats=org.apache.jmeter.config.ConfigTestElement
|
||||||
|
org.apache.jmeter.visualizers.MonitorHealthVisualizer=org.apache.jmeter.config.gui.ObsoleteGui
|
||||||
|
|
||||||
|
# removed in 3.2 class was deleted in r1783280
|
||||||
|
org.apache.jmeter.protocol.http.sampler.HTTPSampler2=org.apache.jmeter.config.ConfigTestElement
|
||||||
|
org.apache.jmeter.protocol.http.sampler.SoapSampler=org.apache.jmeter.config.ConfigTestElement
|
||||||
|
org.apache.jmeter.protocol.http.control.gui.SoapSamplerGui=org.apache.jmeter.config.gui.ObsoleteGui
|
1242
tools/jmeter/src/main/resources/jmeter.properties
Normal file
1242
tools/jmeter/src/main/resources/jmeter.properties
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user