<?xml version="1.0"?>
<!--
   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.
-->
<!-- 
    See the DTD for allowable elements and attributes.
 -->
<!DOCTYPE templates SYSTEM "templates.dtd">
<templates>
    <template isTestPlan="true">
        <name>Recording</name>
        <fileName>/bin/templates/recording.jmx</fileName>
        <description><![CDATA[
        <h1>Template showing how to record</h1>
        <h2>JMeter Configuration</h2>
            <ul>
                <li>JMeter Server Proxy port is set to 8888, you may want to change this</li>
            </ul>
        <h2>Browser Configuration</h2>
        <p>Configure your browser so that it uses the JMeter proxy, set:
            <ul>
                <li>the host of the machine that runs JMeter</li>
                <li>the port you setup in JMeter Server Proxy</li>
            </ul>
        </p>
        <h2>Useful links</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.pdf" >http://jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.pdf</a></li>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Proxy_Server" >http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Proxy_Server</a></li>
            </ul>       
        ]]></description>
        <parameters>
            <parameter defaultValue="recording.xml" key="recordingOutputFile"/>
            <parameter defaultValue="www.example.com" key="hostToRecord"/>
            <parameter defaultValue="https" key="schemeToRecord"/>
        </parameters>
    </template>
    <template isTestPlan="true">
        <name>Recording with Think Time</name>
        <fileName>/bin/templates/recording-with-think-time.jmx</fileName>
        <description><![CDATA[
        <h1>Template showing how to record with think time</h1>
        <h2>JMeter Configuration</h2>
            <ul>
                <li>JMeter Server Proxy port is set to 8888, you may want to change this</li>
            </ul>
        <h2>Browser Configuration</h2>
        <p>Configure your browser so that it uses the JMeter proxy, set:
            <ul>
                <li>the host of the machine that runs JMeter</li>
                <li>the port you setup in JMeter Server Proxy</li>
            </ul>
        </p>
        <h2>Useful links</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.pdf" >http://jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.pdf</a></li>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Proxy_Server" >http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Proxy_Server</a></li>
            </ul>       
        ]]></description>
    </template>
    <template isTestPlan="true">
        <name>JDBC Load Test</name>
        <fileName>jdbc.jmx</fileName>
        <description>
        <![CDATA[<h1>Template showing how to Load Test an SQL query on Database</h1>
        <h2>JMeter Configuration</h2>
            <ul>
                <li>Add the database driver to jmeter/lib folder</li>
                <li>Configure the host, port, username and password in JDBC Configuration</li>
                <li>Modify the SQL query to match your query</li>
            </ul>
        <h2>Useful links</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/build-db-test-plan.html" >http://jmeter.apache.org/usermanual/build-db-test-plan.html</a></li>
            </ul>
        ]]></description>
    </template>
    <template isTestPlan="false">
        <name>JSR223 Sampler using Groovy</name>
        <fileName>GroovyJSR223Sampler.jmx</fileName>
        <description><![CDATA[
        <h1>Sample JSR223 Sampler using Groovy</h1>
        <h2>Overview</h2>
        This is a sample JSR223 sampler which shows how to use some of its features with Apache Groovy language
        <br/>
        Please select a suitable location in the tree before merging.
        <h2>Useful links</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#JSR223_Sampler" >JSR223 Sampler</a></li>
                <li><a href="http://groovy-lang.org/documentation.html" >Apache Groovy</a></li>
            </ul>
        ]]></description>
    </template>
    <template isTestPlan="false">
        <name>BeanShell Sampler</name>
        <fileName>BeanShellSampler.jmx</fileName>
        <description><![CDATA[
        <h1>Sample BeanShell Sampler</h1>
        <h2>Overview</h2>
        This is a sample BeanShell sampler which shows how to use some of its features.
        <br/>
        Please select a suitable location in the tree before merging.
        <h2>Useful links</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#BeanShell_Sampler" >http://jmeter.apache.org/usermanual/component_reference.html#BeanShell_Sampler</a></li>
            </ul>
        ]]></description>
    </template>
    <template isTestPlan="true">
        <name>MongoDB Load Test</name>
        <fileName>mongodb.jmx</fileName>
        <description>
        <![CDATA[<h1>Template showing how to Load Test MongoDB code using MongoDB Java Driver</h1>
        <h2>JMeter Configuration</h2>
            <ul>
                <li>Configure the <b>Server address list</b>, and tune <b>MongoDB options</b> in MongoDB Source Config</li>
                <li>Modify the JSR223 samples (<b>Insert into testCollection</b> and <b>Count from testCollection</b>) to match your needs</li>
            </ul>
        <h2>Mongo Java Driver</h2>
        <p>
            MongoDB Source Config configures the connection to MongoDB for you and stores in <b>MongoDB Source</b> the configuration.<br/>
            You can then access it in any Scripting element using:<br/>
            <i>com.mongodb.DB db = org.apache.jmeter.protocol.mongodb.config.MongoDBHolder.getDBFromSource("db", "test");<i>
        </p>
        <h2>Useful links</h2>
            <ul>
                <li><a href="http://docs.mongodb.org/ecosystem/tutorial/getting-started-with-java-driver/#getting-started-with-java-driver" >Getting Started with Java Driver (<i>Making a connection</i> part is already done by MongoDB Source Config)</a></li>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#MongoDB_Source_Config" >http://jmeter.apache.org/usermanual/component_reference.html#MongoDB_Source_Config</a></li>
            </ul>
        ]]></description>
    </template>
    <template isTestPlan="true">
        <name>Building a Web Test Plan</name>
        <fileName>/bin/templates/build-web-test-plan.jmx</fileName>
        <description><![CDATA[
        <h1>Test plan from Building a Web Test Plan section in user's manual</h1>
        <h2>Useful link</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/build-web-test-plan.html" >http://jmeter.apache.org/usermanual/build-web-test-plan.html</a></li>
            </ul>       
        ]]></description>
    </template>
    <template isTestPlan="true">
        <name>Building an Advanced Web Test Plan</name>
        <fileName>/bin/templates/build-adv-web-test-plan.jmx</fileName>
        <description><![CDATA[
        <h1>Test plan from Building an advanced Web Test Plan section in user's manual</h1>
        <h2>Configuration</h2>
        <p>In order to run the login sample inside plan, create a CSV file following description in <b>loginData</b> sample and put it in a folder of your choice then test running JMeter with:<br/>
            <ul>
                <li><b>jmeter -Jresources_folder=FOLDER TO CHANGE</b></li>
            </ul>
        </p>
        <h2>Useful link</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/build-adv-web-test-plan.html" >http://jmeter.apache.org/usermanual/build-adv-web-test-plan.html</a></li>
            </ul>       
        ]]></description>
    </template>
    <template isTestPlan="true">
        <name>Building a SOAP WebService Test Plan</name>
        <fileName>/bin/templates/build-webservice-test-plan.jmx</fileName>
        <description><![CDATA[
        <h1>Test plan showing how to create a SOAP Webservice Test Plan </h1>
        <h2>Useful links</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#User_Defined_Variables" >User Defined Variables</a></li>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Request_Defaults" >User Defined Variables</a></li>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Request" >HTTP Request</a></li>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#Response_Assertion">Response Assertion</a></li>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Header_Manager">HTTP Header Manager</a></li>
            </ul>       
        ]]></description>
    </template>
    <template isTestPlan="true">
        <name>Building an FTP Test Plan </name>
        <fileName>/bin/templates/build-ftp-test-plan.jmx</fileName>
        <description><![CDATA[
        <h1>Test plan from Building an FTP Test Plan section in user's manual</h1>
        <h2>Useful link</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/build-ftp-test-plan.html" >http://jmeter.apache.org/usermanual/build-ftp-test-plan.html</a></li>
            </ul>       
        ]]></description>
    </template>
    <template isTestPlan="true">
        <name>Building an LDAP Test Plan</name>
        <fileName>/bin/templates/build-ldap-test-plan.jmx</fileName>
        <description><![CDATA[
        <h1>Test plan from Building an LDAP Test Plan section in user's manual</h1>
        <h2>Useful link</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/build-ldap-test-plan.html" >http://jmeter.apache.org/usermanual/build-ldap-test-plan.html</a></li>
            </ul>       
        ]]></description>
    </template>
    <template isTestPlan="true">
        <name>Building an Extended LDAP Test Plan</name>
        <fileName>/bin/templates/build-ldap-ext-test-plan.jmx</fileName>
        <description><![CDATA[
        <h1>Test plan from Building an Extended LDAP Test Plan section in user's manual</h1>
        <h2>Useful link</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/build-ldapext-test-plan.html" >http://jmeter.apache.org/usermanual/build-ldapext-test-plan.html</a></li>
            </ul>       
        ]]></description>
    </template>
    <template isTestPlan="false">
        <name>Think Time at a point</name>
        <fileName>ThinkTime.jmx</fileName>
        <description><![CDATA[
        <h1>Think Time between 2 samplers</h1>
        <h2>Overview</h2>
        This shows how to introduce a Think Time of 1s+/- 100 ms between 2 samplers 
        <br/>
        Please select a suitable location in the tree - e.g. Thread Group or Controller - before merging.
        <h2>Useful links</h2>
            <ul>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#Test_Action" >Test Action</a></li>
                <li><a href="http://jmeter.apache.org/usermanual/component_reference.html#Uniform_Random_Timer" >Uniform Random Timer</a></li>
            </ul>
        ]]></description>
    </template>
</templates>
