怎么进行负载测试?

640?wx_fmt=jpeg

如果你过去几年来一直在做开发,你很难错过从基于敏捷的流程到持续交付的数字化热潮。但不知何故,这种转换跳过了负载测试过程。


使用Taurus进行性能测试


Taurus是一个用于测试自动化的开源框架。 这个免费工具运行来自其他开源工具的脚本的性能测试,包括JMeter,Gatling,Locust和Selenium。 通过扩展他们的能力并掩盖复杂性,Taurus提供了一种创建,运行和分析负载测试的简单方法。 Taurus使用YAML或JSON,它们更容易管理。


这是负载测试演示性的Taurus文件。 如您所见,Simple非常简单:


640?wx_fmt=png

  • concurrency是20个发出请求的用户数。

  • ramp-up是用户达到所需并发性所需的时间。

  • Hold-for是场景的持续时间。

  • 场景是我们正在运行的测试。它在yaml文件中。

  • 这是Taurus在测试运行期间提供并不断更新的测试。在仪表板上,我们可以看到点击、失败、响应时间等:


640?wx_fmt=png


为了从不同的地理位置进行测试,我们使用BlazeMeter,通过添加BlazeMeter个人令牌、更改并发性和添加位置:


640?wx_fmt=png


通过Blazemeter打开测试:


640?wx_fmt=png


这些是结果(针对20个用户):


640?wx_fmt=png


Blazemeter使开发人员能够从不同的地理位置看到他们的代码是如何执行的。统计数据是协作的,因为它需要在网络上查看。这意味着你可以和你的团队一起分享它们。您还可以放大到不同的指标,并选择要分析的指标,以便找出瓶颈。


640?wx_fmt=png

Gatling性能测试


Gatling是一个基于scala的负载测试框架。它与Maven合作得很好,提供了良好的报告。

这些特征在scala中定义。在Taurus文件和scala文件中都进行了更改。


640?wx_fmt=png

我们现在通过Taurus进行测试:


640?wx_fmt=png


这些是BlazeMeter在云端的两个地理位置为1,000名用户提供的结果:

640?wx_fmt=png


和前面一样,这些结果是用来协作识别瓶颈的。

用Locust进行性能测试


Locust是基于python的负载测试,并且易于学习。


这是一个使用Locust执行器的Taurus测试。此测试使用两个不同的并发级别,一个用于本地,另一个用于云。通过选择配置,可以在测试中进行并发性选择。这种可能性适用于Taurus的每一次运行。


640?wx_fmt=png


640?wx_fmt=png


本地结果:

640?wx_fmt=png


在云中,有四个位置:

640?wx_fmt=png

640?wx_fmt=png

本文介绍了Taurus(一种开源测试自动化工具),Gatling和Locust的负载测试。 并展示了如何使用Taurus和BlazeMeter在本地和云测试等过程。



640?wx_fmt=jpeg

长按二维码 ▲

订阅「架构师小秘圈」公众号

如有启发,帮我点个在看,谢谢↓

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值