什么是压测,为什么要进行压力测试?Jmeter工具的使用

大家好,我是IT修真院上海分院第5期学员,一枚正直善良的JAVA程序员。

今天给大家分享一下,修真院官网JAVA任务6中问题,

大家好,我是IT修真院上海分院第5期学员,一枚正直善良的JAVA程序员。

今天给大家分享一下,修真院官网JAVA任务1中问题,什么是压测,为什么要进行压力测试?Jmeter工具的使用?

一、背景介绍

负载测试(LoadTest)、压力测试(StressTest)、容量测试(CapabilityTest)与性能测试(PerformanceTest)是相互关系?

简单讲性能测试包括负载测试、压力测试和容量测试三种主要测试类型和其他测试类型。

性能测试就是用来测试软件在系统中的运行性能的。可以对单独模块测试,但只有整个系统集成后测试的性能才是真正的性能;

负载测试是为了检验系统在给定负载下是否能达到预期性能指标;

容量测试针对数据库而言,是在数据库中有较大数量的数据记录情况下对系统进行的测试;

压力测试是通过不断向被测系统施加“压力”,测试系统在压力情况下的性能表现,考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在,也就是我们可以模拟巨大的工作负荷以查看应用程序在峰值使用情况下如何执行操作。

Web服务处于分布式计算的核心位置,它们之间的交互通常很难测试。分布式开发、大型的开发者团队以及对代码日益组件化的期望都有可能使Web服务的开发变得越来越容易隐藏错误。这些类型的错误极难检测出来。压力测试是检测这类代码错误的一种有效方法,但是只有在压力系统设计得比较有效的情况下才能发挥作用。

压力测试考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在。压测都是为了系统在线上的处理能力和稳定性维持在一个标准范围内,做到心中有数。

使用压力测试,您有希望找到很多种用其他测试方法更难发现的错误。有两种错误类型是:内存泄漏,并发与同步。

有效的压力测试系统将应用以下这些关键条件:重复,并发,量级,随机变化。

二.知识剖析

JMeter怎么使用
测试计划(test plan)的各个部分:

Test Plan:所有测试内容都包含在Test Plan 下。

Jmeter的元素:

Thread Group;Controllers;Samplers;Logic Controllers;

Test Fragments;Listeners;Timers;Assertions;Configuration Elements;

Pre-Processor Elements;Post-Processor Elements;

执行顺序:

  1. Configuration elements
  2. Pre-Processors
  3. Timers
  4. Sampler
  5. Post-Processors (unless SampleResult is null)
  6. Assertions (unless SampleResult is null)
  7. Listeners (unless SampleResult is null)

For example, in the following test plan:

  • Controller
    •     Post-Processor 1
    •     Sampler 1
    •     Sampler 2
    •     Timer 1
    •     Assertion 1
    •     Pre-Processor 1
    •     Timer 2
    •     Post-Processor 2
The order of execution would be:
Pre-Processor 1
Timer 1
Timer 2
Sampler 1
Post-Processor 1
Post-Processor 2
Assertion 1

Pre-Processor 1
Timer 1
Timer 2
Sampler 2
Post-Processor 1
Post-Processor 2
Assertion 1

Scoping Rules:

The JMeter test tree contains elements that are both hierarchical and ordered. Some elements in the test trees are strictly hierarchical (Listeners, Config Elements, Post-Processors, Pre-Processors, Assertions, Timers), and some are primarily ordered (controllers, samplers). When you create your test plan, you will create an ordered list of sample request (via Samplers) that represent a set of steps to be executed. These requests are often organized within controllers that are also ordered. Given the following test tree:

Example test treeExample test tree

The order of requests will be, One, Two, Three, Four.

Some controllers affect the order of their subelements, and you can read about these specific controllers in the component reference.

三.常见问题

1.压力测试和性能测试的区别?

2.JMeter怎么添加插件?

四.解决方案

1.压力测试:对系统不断施加压力的测试,是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。例如测试一个Web站点在大量的负荷下,何时系统的响应会退化或失败。

性能测试:在交替进行负荷和强迫测试时常用的术语。性能测试关注的是系统的整体。它和通常所说的强度、压力/负载测试测试有密切关系。所以压力和强度测试应该于性能测试一同进行。

2.添加plugins-manager.jar 到lib/ext目录后重启JMeter,在option菜单可以选项plugin manager中添加插件。

五。编码实战

六、参考文献

性能测试、压力测试、负载测试和容量测试的区别与联系

web网站压力测试教程详解

https://www.cnblogs.com/imyalost/p/7062784.html?utm_source=itdadao&utm_medium=referral
http://jmeter.apache.org/usermanual/test_plan.html#thread_group
http://jmeter.apache.org/usermanual/build-web-test-plan.html#adding_cookie_support

8.更多讨论

鸣谢

感谢观看,如有出错,恳请指正

七.更多讨论

详见视频

腾讯视频

感谢大家观看

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

技能树.IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧~

我的邀请码链接:http://www.jnshu.com/login/1/20535344

我的邀请码:20535344?

猜你喜欢

转载自blog.csdn.net/weixin_40296254/article/details/80247111