简单使用tsung

1、查看~下有没有.tsung目录,没有需要创建
mkdir ~/.tsung
2、cd ~/.tsung
3、创建几个文件(ts.sh、ts.xml、tsung-1.0.dtd)
1)ts.sh

#!/bin/bash
reportPath="./logs"
currentTest=`date +%Y%m%d-%H%M`
reportPaths="$reportPath/$currentTest"

tsung -f ts.xml -l $reportPath start &
wait %1
cd $reportPaths
tsung_stats.pl 
python -m SimpleHTTPServer 8080

2)ts.xml
<?xml version="1.0"?>
<!DOCTYPE tsung SYSTEM "/usr/local/share/tsung/tsung-1.0.dtd">
<tsung backend="text" loglevel="notice" dumptraffic="false" version="1.0">

    <clients>
        <client host="localhost"  use_controller_vm="true" maxusers="20000">
        </client>
    </clients>

    <servers>
        <server host="www.yh.com" port="443" type="tcp"></server>
    </servers>

    <load>
     <arrivalphase phase="1" duration="60" unit="second">
        <users maxnumber="200" interarrival="0.1" unit="second"></users>
     </arrivalphase>
    <!-- <arrivalphase phase="2" duration="600" unit="second">
        <users maxnumber="1000000" interarrival="0.001" unit="second"></users>
     </arrivalphase>
     <arrivalphase phase="3" duration="600" unit="second">
        <users interarrival="0.001" unit="second"></users>
     </arrivalphase>
-->
    </load>

    <options>
        <option name="connect_timeout" value="1000"/>
    <!--
     <option name="tcp_snd_buffer" value="16384"></option>
     <option name="tcp_rcv_buffer" value="16384"></option>
     <option name="rate_limit" value="1024"></option>
     <option name="tcp_reuseaddr" value="true"/>
     <option name="hibernate" value="5"></option>
-->  
</options>

    <sessions>
        <session name="http_test_all" probability="20" type="ts_http">
    <!--    <for from="1" to="10000" incr="1" var="counter">   -->
            <setdynvars sourcetype="random_string" length="20">
                <var name="remark" />
            </setdynvars>

            <request subst="true">

                <!-- <http url="http://rush-test.yh.com/api/R0103" method="POST" version="1.1" contents=" -->
                <http url="https://www.yh.com" method="POST" version="1.1" contents="ordersDataType%3D-1%26page%3D1%26perPage%3D10%26uid%3D954366548232159445%26sid%3D3c56c9570fa04cb2aad98f7c3bcb7020" content_type="application/json">
                </http>
            </request>
            <thinktime value="0.001" random="true"></thinktime>
<!--    </for>-->
        </session>
<session name="http_test_1" probability="20" type="ts_http">
            <!--  <for from="1" to="10000" incr="1" var="counter">-->
            <setdynvars sourcetype="random_string" length="20">
                <var name="remark" />
            </setdynvars>

            <request subst="true">

                <!-- <http url="http://rush-test.yh.com/api/R0103" method="POST" version="1.1" contents=" -->
                <http url="https://www.yh.com" method="POST" version="1.1" contents="ordersDataType%3D1%26page%3D1%26perPage%3D10%26uid%3D954366548232159445%26sid%3D3c56c9570fa04cb2aad98f7c3bcb7020" content_type="application/json">
                </http>
            </request>
            <thinktime value="0.001" random="true"></thinktime>
        <!--    </for>-->
        </session>
<session name="http_test_2" probability="20" type="ts_http">
             <!-- <for from="1" to="10000" incr="1" var="counter">-->
            <setdynvars sourcetype="random_string" length="20">
                <var name="remark" />
            </setdynvars>

            <request subst="true">

                <!-- <http url="http://rush-test.yh.com/api/R0103" method="POST" version="1.1" contents=" -->
                <http url="https://www.yh.com" method="POST" version="1.1" contents="ordersDataType%3D2%26page%3D1%26perPage%3D10%26uid%3D954366548232159445%26sid%3D3c56c9570fa04cb2aad98f7c3bcb7020" content_type="application/json">
                </http>
            </request>
            <thinktime value="0.001" random="true"></thinktime>
         <!--   </for>-->
        </session>
<session name="http_test_3" probability="20" type="ts_http">
             <!-- <for from="1" to="10000" incr="1" var="counter">-->
            <setdynvars sourcetype="random_string" length="20">
                <var name="remark" />
            </setdynvars>

            <request subst="true">

                <!-- <http url="http://rush-test.yh.com/api/R0103" method="POST" version="1.1" contents=" -->
                <http url="https://www.yh.com" method="POST" version="1.1" contents="ordersDataType%3D3%26page%3D1%26perPage%3D10%26uid%3D954366548232159445%26sid%3D3c56c9570fa04cb2aad98f7c3bcb7020" content_type="application/json">
                </http>
            </request>
            <thinktime value="0.001" random="true"></thinktime>
        <!--    </for>-->
        </session>
<session name="http_test_4" probability="20" type="ts_http">
             <!-- <for from="1" to="10000" incr="1" var="counter">-->
            <setdynvars sourcetype="random_string" length="20">
                <var name="remark" />
            </setdynvars>

            <request subst="true">

                <!-- <http url="http://rush-test.yh.com/api/R0103" method="POST" version="1.1" contents=" -->
                <http url="https://www.yh.com" method="POST" version="1.1" contents="ordersDataType%3D4%26page%3D1%26perPage%3D10%26uid%3D954366548232159445%26sid%3D3c56c9570fa04cb2aad98f7c3bcb7020" content_type="application/json">
                </http>
            </request>
            <thinktime value="0.001" random="true"></thinktime>
            <!--  </for>-->
        </session>

</sessions>
</tsung>

3)tsung-1.0.dtd
默认安装在/usr/local/share/tsung/

猜你喜欢

转载自blog.51cto.com/332532/2480484