性能测试之tsung

Posted 高阶软件测试

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了性能测试之tsung相关的知识,希望对你有一定的参考价值。


缘由:之前一直使用jmeter进行性能测试,但是jmeter有个瓶颈(如果并发数加大,会将客户机的硬件资源耗死,当然这种现象可以使用分布式部署执行);后面听说tsung支撑百万并发(事实上后续发现这种百万也是使用的分布式执行),所以本篇就针对tsung进行描述下。


【1】tsung是什么


   tsung 官方使用手册:http://tsung.erlang-projects.org/user_manual/


  tsung是一个开源、多协议、分布式的压力测试工具。它可以用来测试HTTP, WebDAV, SOAP, PostgreSQL, mysql, LDAP 和Jabber/XMPP的服务器,并且支持扩展协议。



【2】tsung的特性

tsung的主要特性


  1. 高性能:Tsung每台物理计算机可以模拟大量并发用户:它可以在单个CPU上模拟数千个用户

  2. 分布式:负载可以分布在客户端计算机的群集上

  3. 使用插件系统的多协议:当前支持HTTP(标准Web流量和SOAP),WebDAV,Jabber / XMPP和PostgreSQL。LDAP和MySQL插件首先包含在1.3.0版本中

  4. SSL支持

  5. 使用远程服务器或SNMP上的Erlang代理进行OS监视(CPU,内存和网络流量)

  6. XML配置系统:用XML编写复杂的用户场景。可以使用Tsung记录器(仅HTTP和PostgreSQL)通过简单的浏览器编写场景。

  7. 动态方案:可以在负载下从服务器获取动态数据(无需编写任何代码),然后将其重新插入后续请求中。当字符串(或regexp)与服务器响应匹配时,还可以循环,重新启动或停止会话。

  8. 混合行为:在同一基准测试期间,可以使用多个会话来模拟不同类型的用户。您可以定义基准测试方案中各种行为的比例。

  9. 随机过程:为了产生现实的流量,可以使用概率分布(当前为指数)将用户的思考时间和到达率随机化


【3】tsung的安装


tsung目前只支持Linux系统;tsung是erlang写的,绘制图表时使用的gnuplot,需要使用perl相关库,所以也要安装perl, gnuplot。


  1. 安装依赖

    yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel


    yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

    yum installflexerlang systemd-devel autoconf automake lksctp-tools-devel m4 ncurses-develzlib-devel unixODBC-devel emacs emacs-el wxGTK3-devel

  2. 安装perl及gnuplot

    yum -y install perl

    yum -y install gnuplot


  3. 编译安装

    ./configure

    make &&make install


【4】tsung的执行


  1. 执行案例

    tsung -f  /usr/share/doc/tsung/examples/http_simple.xml start

  2. 报告

    进入生成的log目录执行命令:

    /usr/lib/tsung/bin/tsung_stats.pl

  3. 结果

性能测试之tsung

性能测试之tsung

【5】后记


具体的使用请参考官网,tsung无界面模式,在Linux上使用xml配置场景或者接口进行执行测试并且开发语言是比较偏的erlang,相对于要入门的新手来说还是比较难的;一般的测试性能执行个人认为使用jmeter还是足够的,对于场景的编写jmeter也是可以胜任的,当然还有另外一种协程类的性能执行工具 locust也是支持百万并发的。工具只是辅助,重要的还是测试策略的规划,可以实现目标即可。


推荐阅读

点击阅读☞

点击阅读☞

点击阅读☞1

点击阅读☞





以上是关于性能测试之tsung的主要内容,如果未能解决你的问题,请参考以下文章

转MQTT压力测试之Tsung的使用

MQTT压力测试之Tsung的使用

软件测试之性能测试

性能测试之自动化性能测试(全链路)

05 tsung 服务器性能监控

性能测试之——我的性能测试实战