Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

break servlet-3.0 examples into separate subprojects

  • Loading branch information...
commit b5a7655dee79f5ce3b37b1e01d4a3e5f8d37d4ed 1 parent e9a8f06
@earldouglas earldouglas authored
Showing with 237 additions and 1,016 deletions.
  1. +66 −2 fast-test.jmx
  2. +4 −4 load-test.jmx
  3. +19 −0 scalatra/build.sbt
  4. +2 −0  scalatra/project/build.sbt
  5. +41 −0 scalatra/src/main/scala/scamper/Scamper.scala
  6. 0  {servlet-3.0 → scalatra}/src/main/scala/scamper/ScamperScalatraServlet.scala
  7. +18 −0 scalatra/src/main/webapp/WEB-INF/web.xml
  8. +19 −0 servlet-3.0-async/build.sbt
  9. +2 −0  servlet-3.0-async/project/build.sbt
  10. +3 −3 {servlet-3.0 → servlet-3.0-async}/src/main/scala/scamper/AsyncServlet.scala
  11. +41 −0 servlet-3.0-async/src/main/scala/scamper/Scamper.scala
  12. +18 −0 servlet-3.0-async/src/main/webapp/WEB-INF/web.xml
  13. +0 −54 servlet-3.0/async-fast-test.jmx
  14. +0 −183 servlet-3.0/async-load-test.jmx
  15. +0 −54 servlet-3.0/basic-fast-test.jmx
  16. +0 −183 servlet-3.0/basic-load-test.jmx
  17. +0 −54 servlet-3.0/scalatra-async-fast-test.jmx
  18. +0 −183 servlet-3.0/scalatra-async-load-test.jmx
  19. +0 −54 servlet-3.0/scalatra-fast-test.jmx
  20. +0 −183 servlet-3.0/scalatra-load-test.jmx
  21. +0 −28 servlet-3.0/src/main/scala/scamper/AsyncScamperScalatraServlet.scala
  22. +3 −3 servlet-3.0/src/main/scala/scamper/BasicServlet.scala
  23. +1 −28 servlet-3.0/src/main/webapp/WEB-INF/web.xml
View
68 fast-test.jmx
@@ -15,9 +15,9 @@
<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">10</stringProp>
+ <intProp name="LoopController.loops">10000</intProp>
</elementProp>
- <stringProp name="ThreadGroup.num_threads">1000</stringProp>
+ <stringProp name="ThreadGroup.num_threads">10</stringProp>
<stringProp name="ThreadGroup.ramp_time">1</stringProp>
<longProp name="ThreadGroup.start_time">1347296476000</longProp>
<longProp name="ThreadGroup.end_time">1347296476000</longProp>
@@ -49,6 +49,70 @@
<Summariser guiclass="SummariserGui" testclass="Summariser" testname="localhost:9000/fast" enabled="true"/>
<hashTree/>
</hashTree>
+ <ResultCollector guiclass="SummaryReport" testclass="ResultCollector" testname="Summary Report" 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/>
+ <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>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>
</jmeterTestPlan>
View
8 load-test.jmx
@@ -15,7 +15,7 @@
<collectionProp name="Arguments.arguments">
<elementProp name="loops" elementType="Argument">
<stringProp name="Argument.name">loops</stringProp>
- <stringProp name="Argument.value">10</stringProp>
+ <stringProp name="Argument.value">100</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="host" elementType="Argument">
@@ -45,17 +45,17 @@
</elementProp>
<elementProp name="fastThreads" elementType="Argument">
<stringProp name="Argument.name">fastThreads</stringProp>
- <stringProp name="Argument.value">100</stringProp>
+ <stringProp name="Argument.value">5</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="mediumThreads" elementType="Argument">
<stringProp name="Argument.name">mediumThreads</stringProp>
- <stringProp name="Argument.value">75</stringProp>
+ <stringProp name="Argument.value">3</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
<elementProp name="slowThreads" elementType="Argument">
<stringProp name="Argument.name">slowThreads</stringProp>
- <stringProp name="Argument.value">25</stringProp>
+ <stringProp name="Argument.value">2</stringProp>
<stringProp name="Argument.metadata">=</stringProp>
</elementProp>
</collectionProp>
View
19 scalatra/build.sbt
@@ -0,0 +1,19 @@
+name := "scamper-scalatra"
+
+organization := "com.versal"
+
+version := "0.1-SNAPSHOT"
+
+scalaVersion := "2.9.1"
+
+seq(webSettings :_*)
+
+classpathTypes ~= (_ + "orbit")
+
+libraryDependencies ++= Seq(
+ "org.eclipse.jetty.orbit" % "javax.servlet" % "3.0.0.v201112011016" % "compile,container" artifacts (Artifact("javax.servlet", "jar", "jar"))
+ , "org.eclipse.jetty" % "jetty-webapp" % "8.1.4.v20120524" % "compile,container" artifacts (Artifact("jetty-webapp", "jar", "jar"))
+ , "org.scalatra" %% "scalatra" % "2.0.4"
+)
+
+port in container.Configuration := 9000
View
2  scalatra/project/build.sbt
@@ -0,0 +1,2 @@
+libraryDependencies += "com.github.siasia" %% "xsbt-web-plugin" % "0.12.0-0.2.11.1"
+
View
41 scalatra/src/main/scala/scamper/Scamper.scala
@@ -0,0 +1,41 @@
+package scamper
+
+import org.eclipse.jetty.server.nio.SelectChannelConnector
+import org.eclipse.jetty.server.Server
+import org.eclipse.jetty.util.thread.QueuedThreadPool
+import org.eclipse.jetty.webapp.WebAppContext
+
+import javax.servlet.http.HttpServletResponse
+
+object Responder {
+
+ def sleep(ms: Long): Long = {
+ val start = System.currentTimeMillis
+ Thread.sleep(ms)
+ val stop = System.currentTimeMillis
+ stop - start
+ }
+
+ def fast(res: HttpServletResponse) { res.getWriter().write("<h1>slept for %d ms</h1>".format(sleep(0))) }
+ def medium(res: HttpServletResponse) { res.getWriter().write("<h1>slept for %d ms</h1>".format(sleep(150))) }
+ def slow(res: HttpServletResponse) { res.getWriter().write("<h1>slept for %d ms</h1>".format(sleep(300))) }
+}
+
+object Launcher extends App {
+
+ val server = new Server()
+
+ val connector = new SelectChannelConnector()
+ connector.setPort(9000)
+ connector.setThreadPool(new QueuedThreadPool(24))
+
+ server.addConnector(connector)
+
+ val webapp = new WebAppContext()
+ webapp.setContextPath("/")
+ webapp.setWar("src/main/webapp")
+ server.setHandler(webapp)
+
+ server.start()
+ server.join()
+}
View
0  ...cala/scamper/ScamperScalatraServlet.scala → ...cala/scamper/ScamperScalatraServlet.scala
File renamed without changes
View
18 scalatra/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
+ version="3.0"
+ >
+
+ <servlet>
+ <servlet-name>scalatra</servlet-name>
+ <servlet-class>scamper.ScamperScalatraServlet</servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>scalatra</servlet-name>
+ <url-pattern>/*</url-pattern>
+ </servlet-mapping>
+
+</web-app>
View
19 servlet-3.0-async/build.sbt
@@ -0,0 +1,19 @@
+name := "scamper-servlet-3.0-async"
+
+organization := "com.versal"
+
+version := "0.1-SNAPSHOT"
+
+scalaVersion := "2.9.1"
+
+seq(webSettings :_*)
+
+classpathTypes ~= (_ + "orbit")
+
+libraryDependencies ++= Seq(
+ "org.eclipse.jetty.orbit" % "javax.servlet" % "3.0.0.v201112011016" % "compile,container" artifacts (Artifact("javax.servlet", "jar", "jar"))
+ , "org.eclipse.jetty" % "jetty-webapp" % "8.1.4.v20120524" % "compile,container" artifacts (Artifact("jetty-webapp", "jar", "jar"))
+ , "org.scalatra" %% "scalatra" % "2.0.4"
+)
+
+port in container.Configuration := 9000
View
2  servlet-3.0-async/project/build.sbt
@@ -0,0 +1,2 @@
+libraryDependencies += "com.github.siasia" %% "xsbt-web-plugin" % "0.12.0-0.2.11.1"
+
View
6 ...src/main/scala/scamper/AsyncServlet.scala → ...src/main/scala/scamper/AsyncServlet.scala
@@ -17,13 +17,13 @@ object AsyncExecutor {
class AsyncServlet extends HttpServlet {
override def doGet(req: HttpServletRequest, res: HttpServletResponse) =
req.getRequestURI() match {
- case "/async/fast" =>
+ case "/fast" =>
req.setAttribute("org.apache.catalina.ASYNC_SUPPORTED", true)
AsyncExecutor.execute(req.startAsync())(Responder.fast(res))
- case "/async/medium" =>
+ case "/medium" =>
req.setAttribute("org.apache.catalina.ASYNC_SUPPORTED", true)
AsyncExecutor.execute(req.startAsync())(Responder.medium(res))
- case "/async/slow" =>
+ case "/slow" =>
req.setAttribute("org.apache.catalina.ASYNC_SUPPORTED", true)
AsyncExecutor.execute(req.startAsync())(Responder.slow(res))
}
View
41 servlet-3.0-async/src/main/scala/scamper/Scamper.scala
@@ -0,0 +1,41 @@
+package scamper
+
+import org.eclipse.jetty.server.nio.SelectChannelConnector
+import org.eclipse.jetty.server.Server
+import org.eclipse.jetty.util.thread.QueuedThreadPool
+import org.eclipse.jetty.webapp.WebAppContext
+
+import javax.servlet.http.HttpServletResponse
+
+object Responder {
+
+ def sleep(ms: Long): Long = {
+ val start = System.currentTimeMillis
+ Thread.sleep(ms)
+ val stop = System.currentTimeMillis
+ stop - start
+ }
+
+ def fast(res: HttpServletResponse) { res.getWriter().write("<h1>slept for %d ms</h1>".format(sleep(0))) }
+ def medium(res: HttpServletResponse) { res.getWriter().write("<h1>slept for %d ms</h1>".format(sleep(150))) }
+ def slow(res: HttpServletResponse) { res.getWriter().write("<h1>slept for %d ms</h1>".format(sleep(300))) }
+}
+
+object Launcher extends App {
+
+ val server = new Server()
+
+ val connector = new SelectChannelConnector()
+ connector.setPort(9000)
+ connector.setThreadPool(new QueuedThreadPool(24))
+
+ server.addConnector(connector)
+
+ val webapp = new WebAppContext()
+ webapp.setContextPath("/")
+ webapp.setWar("src/main/webapp")
+ server.setHandler(webapp)
+
+ server.start()
+ server.join()
+}
View
18 servlet-3.0-async/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
+ version="3.0"
+ >
+
+ <servlet>
+ <servlet-name>async</servlet-name>
+ <servlet-class>scamper.AsyncServlet</servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>async</servlet-name>
+ <url-pattern>/*</url-pattern>
+ </servlet-mapping>
+
+</web-app>
View
54 servlet-3.0/async-fast-test.jmx
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jmeterTestPlan version="1.2" properties="2.3">
- <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">10</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">1000</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="localhost:9000/async/fast" 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">localhost</stringProp>
- <stringProp name="HTTPSampler.port">9000</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">/async/fast</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>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="localhost:9000/async/fast" enabled="true"/>
- <hashTree/>
- </hashTree>
- </hashTree>
- </hashTree>
-</jmeterTestPlan>
View
183 servlet-3.0/async-load-test.jmx
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jmeterTestPlan version="1.2" properties="2.3">
- <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>
- <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
- <collectionProp name="Arguments.arguments">
- <elementProp name="loops" elementType="Argument">
- <stringProp name="Argument.name">loops</stringProp>
- <stringProp name="Argument.value">10</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <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">9001</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="fastEndpoint" elementType="Argument">
- <stringProp name="Argument.name">fastEndpoint</stringProp>
- <stringProp name="Argument.value">/async/fast</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="mediumEndpoint" elementType="Argument">
- <stringProp name="Argument.name">mediumEndpoint</stringProp>
- <stringProp name="Argument.value">/async/medium</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="slowEndpoint" elementType="Argument">
- <stringProp name="Argument.name">slowEndpoint</stringProp>
- <stringProp name="Argument.value">/async/slow</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="fastThreads" elementType="Argument">
- <stringProp name="Argument.name">fastThreads</stringProp>
- <stringProp name="Argument.value">100</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="mediumThreads" elementType="Argument">
- <stringProp name="Argument.name">mediumThreads</stringProp>
- <stringProp name="Argument.value">75</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="slowThreads" elementType="Argument">
- <stringProp name="Argument.name">slowThreads</stringProp>
- <stringProp name="Argument.value">25</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- </collectionProp>
- </Arguments>
- <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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${fastThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${fastEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${fastEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${fastEndpoint} " enabled="true"/>
- <hashTree/>
- </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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${mediumThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${mediumEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${mediumEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${mediumEndpoint}" enabled="true"/>
- <hashTree/>
- </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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${slowThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${slowEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${slowEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${slowEndpoint} " enabled="true"/>
- <hashTree/>
- </hashTree>
- </hashTree>
- </hashTree>
-</jmeterTestPlan>
View
54 servlet-3.0/basic-fast-test.jmx
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jmeterTestPlan version="1.2" properties="2.3">
- <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">10</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">1000</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="localhost:9000/basic/fast" 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">localhost</stringProp>
- <stringProp name="HTTPSampler.port">9000</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">/basic/fast</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>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="localhost:9000/basic/fast" enabled="true"/>
- <hashTree/>
- </hashTree>
- </hashTree>
- </hashTree>
-</jmeterTestPlan>
View
183 servlet-3.0/basic-load-test.jmx
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jmeterTestPlan version="1.2" properties="2.3">
- <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>
- <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
- <collectionProp name="Arguments.arguments">
- <elementProp name="loops" elementType="Argument">
- <stringProp name="Argument.name">loops</stringProp>
- <stringProp name="Argument.value">10</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <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">9001</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="fastEndpoint" elementType="Argument">
- <stringProp name="Argument.name">fastEndpoint</stringProp>
- <stringProp name="Argument.value">/basic/fast</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="mediumEndpoint" elementType="Argument">
- <stringProp name="Argument.name">mediumEndpoint</stringProp>
- <stringProp name="Argument.value">/basic/medium</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="slowEndpoint" elementType="Argument">
- <stringProp name="Argument.name">slowEndpoint</stringProp>
- <stringProp name="Argument.value">/basic/slow</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="fastThreads" elementType="Argument">
- <stringProp name="Argument.name">fastThreads</stringProp>
- <stringProp name="Argument.value">100</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="mediumThreads" elementType="Argument">
- <stringProp name="Argument.name">mediumThreads</stringProp>
- <stringProp name="Argument.value">75</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="slowThreads" elementType="Argument">
- <stringProp name="Argument.name">slowThreads</stringProp>
- <stringProp name="Argument.value">25</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- </collectionProp>
- </Arguments>
- <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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${fastThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${fastEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${fastEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${fastEndpoint} " enabled="true"/>
- <hashTree/>
- </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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${mediumThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${mediumEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${mediumEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${mediumEndpoint}" enabled="true"/>
- <hashTree/>
- </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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${slowThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${slowEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${slowEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${slowEndpoint} " enabled="true"/>
- <hashTree/>
- </hashTree>
- </hashTree>
- </hashTree>
-</jmeterTestPlan>
View
54 servlet-3.0/scalatra-async-fast-test.jmx
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jmeterTestPlan version="1.2" properties="2.3">
- <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">10</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">1000</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="localhost:9000/scalatra-async/fast" 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">localhost</stringProp>
- <stringProp name="HTTPSampler.port">9000</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">/scalatra-async/fast</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>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="localhost:9000/scalatra-async/fast" enabled="true"/>
- <hashTree/>
- </hashTree>
- </hashTree>
- </hashTree>
-</jmeterTestPlan>
View
183 servlet-3.0/scalatra-async-load-test.jmx
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jmeterTestPlan version="1.2" properties="2.3">
- <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>
- <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
- <collectionProp name="Arguments.arguments">
- <elementProp name="loops" elementType="Argument">
- <stringProp name="Argument.name">loops</stringProp>
- <stringProp name="Argument.value">10</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <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">9001</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="fastEndpoint" elementType="Argument">
- <stringProp name="Argument.name">fastEndpoint</stringProp>
- <stringProp name="Argument.value">/scalatra-async/fast</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="mediumEndpoint" elementType="Argument">
- <stringProp name="Argument.name">mediumEndpoint</stringProp>
- <stringProp name="Argument.value">/scalatra-async/medium</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="slowEndpoint" elementType="Argument">
- <stringProp name="Argument.name">slowEndpoint</stringProp>
- <stringProp name="Argument.value">/scalatra-async/slow</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="fastThreads" elementType="Argument">
- <stringProp name="Argument.name">fastThreads</stringProp>
- <stringProp name="Argument.value">100</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="mediumThreads" elementType="Argument">
- <stringProp name="Argument.name">mediumThreads</stringProp>
- <stringProp name="Argument.value">75</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="slowThreads" elementType="Argument">
- <stringProp name="Argument.name">slowThreads</stringProp>
- <stringProp name="Argument.value">25</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- </collectionProp>
- </Arguments>
- <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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${fastThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${fastEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${fastEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${fastEndpoint} " enabled="true"/>
- <hashTree/>
- </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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${mediumThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${mediumEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${mediumEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${mediumEndpoint}" enabled="true"/>
- <hashTree/>
- </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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${slowThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${slowEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${slowEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${slowEndpoint} " enabled="true"/>
- <hashTree/>
- </hashTree>
- </hashTree>
- </hashTree>
-</jmeterTestPlan>
View
54 servlet-3.0/scalatra-fast-test.jmx
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jmeterTestPlan version="1.2" properties="2.3">
- <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">10</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">1000</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="localhost:9000/scalatra/fast" 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">localhost</stringProp>
- <stringProp name="HTTPSampler.port">9000</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">/scalatra/fast</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>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="localhost:9000/scalatra/fast" enabled="true"/>
- <hashTree/>
- </hashTree>
- </hashTree>
- </hashTree>
-</jmeterTestPlan>
View
183 servlet-3.0/scalatra-load-test.jmx
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jmeterTestPlan version="1.2" properties="2.3">
- <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>
- <Arguments guiclass="ArgumentsPanel" testclass="Arguments" testname="User Defined Variables" enabled="true">
- <collectionProp name="Arguments.arguments">
- <elementProp name="loops" elementType="Argument">
- <stringProp name="Argument.name">loops</stringProp>
- <stringProp name="Argument.value">10</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <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">9001</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="fastEndpoint" elementType="Argument">
- <stringProp name="Argument.name">fastEndpoint</stringProp>
- <stringProp name="Argument.value">/scalatra/fast</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="mediumEndpoint" elementType="Argument">
- <stringProp name="Argument.name">mediumEndpoint</stringProp>
- <stringProp name="Argument.value">/scalatra/medium</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="slowEndpoint" elementType="Argument">
- <stringProp name="Argument.name">slowEndpoint</stringProp>
- <stringProp name="Argument.value">/scalatra/slow</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="fastThreads" elementType="Argument">
- <stringProp name="Argument.name">fastThreads</stringProp>
- <stringProp name="Argument.value">100</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="mediumThreads" elementType="Argument">
- <stringProp name="Argument.name">mediumThreads</stringProp>
- <stringProp name="Argument.value">75</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- <elementProp name="slowThreads" elementType="Argument">
- <stringProp name="Argument.name">slowThreads</stringProp>
- <stringProp name="Argument.value">25</stringProp>
- <stringProp name="Argument.metadata">=</stringProp>
- </elementProp>
- </collectionProp>
- </Arguments>
- <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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${fastThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${fastEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${fastEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${fastEndpoint} " enabled="true"/>
- <hashTree/>
- </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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${mediumThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${mediumEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${mediumEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${mediumEndpoint}" enabled="true"/>
- <hashTree/>
- </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">${loops}</stringProp>
- </elementProp>
- <stringProp name="ThreadGroup.num_threads">${slowThreads}</stringProp>
- <stringProp name="ThreadGroup.ramp_time">1</stringProp>
- <longProp name="ThreadGroup.start_time">1347296476000</longProp>
- <longProp name="ThreadGroup.end_time">1347296476000</longProp>
- <boolProp name="ThreadGroup.scheduler">false</boolProp>
- <stringProp name="ThreadGroup.duration"></stringProp>
- <stringProp name="ThreadGroup.delay"></stringProp>
- </ThreadGroup>
- <hashTree>
- <HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="${host}:${port}${slowEndpoint}" 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">${host}</stringProp>
- <stringProp name="HTTPSampler.port">${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">${slowEndpoint}</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>
- <stringProp name="TestPlan.comments"> </stringProp>
- </HTTPSamplerProxy>
- <hashTree/>
- <Summariser guiclass="SummariserGui" testclass="Summariser" testname="${host}:${port}${slowEndpoint} " enabled="true"/>
- <hashTree/>
- </hashTree>
- </hashTree>
- </hashTree>
-</jmeterTestPlan>
View
28 servlet-3.0/src/main/scala/scamper/AsyncScamperScalatraServlet.scala
@@ -1,28 +0,0 @@
-package scamper
-
-import org.scalatra.ScalatraServlet
-
-import javax.servlet.http.HttpServletRequest
-import javax.servlet.http.HttpServletResponse
-
-class AsyncScamperScalatraServlet extends ScalatraServlet {
-
- override def handle(req: HttpServletRequest, res: HttpServletResponse) {
- AsyncExecutor.execute(req.startAsync())(super.handle(req, res))
- }
-
- get("/scalatra-async/fast") {
- contentType = "text/html"
- <h1>slept for { Responder.sleep(0) } ms</h1>
- }
-
- get("/scalatra-async/medium") {
- contentType = "text/html"
- <h1>slept for { Responder.sleep(150) } ms</h1>
- }
-
- get("/scalatra-async/slow") {
- contentType = "text/html"
- <h1>slept for { Responder.sleep(300) } ms</h1>
- }
-}
View
6 servlet-3.0/src/main/scala/scamper/BasicServlet.scala
@@ -7,9 +7,9 @@ import javax.servlet.http.HttpServletResponse
class BasicServlet extends HttpServlet {
override def doGet(req: HttpServletRequest, res: HttpServletResponse) =
req.getRequestURI() match {
- case "/basic/fast" => Responder.fast(res)
- case "/basic/medium" => Responder.medium(res)
- case "/basic/slow" => Responder.slow(res)
+ case "/fast" => Responder.fast(res)
+ case "/medium" => Responder.medium(res)
+ case "/slow" => Responder.slow(res)
}
}
View
29 servlet-3.0/src/main/webapp/WEB-INF/web.xml
@@ -11,34 +11,7 @@
</servlet>
<servlet-mapping>
<servlet-name>basic</servlet-name>
- <url-pattern>/basic/*</url-pattern>
- </servlet-mapping>
-
- <servlet>
- <servlet-name>async</servlet-name>
- <servlet-class>scamper.AsyncServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>async</servlet-name>
- <url-pattern>/async/*</url-pattern>
- </servlet-mapping>
-
- <servlet>
- <servlet-name>scalatra</servlet-name>
- <servlet-class>scamper.ScamperScalatraServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>scalatra</servlet-name>
- <url-pattern>/scalatra/*</url-pattern>
- </servlet-mapping>
-
- <servlet>
- <servlet-name>scalatra-async</servlet-name>
- <servlet-class>scamper.AsyncScamperScalatraServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>scalatra-async</servlet-name>
- <url-pattern>/scalatra-async/*</url-pattern>
+ <url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
Please sign in to comment.
Something went wrong with that request. Please try again.