性能测试工具基本工作原理及基本操作流程

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: 性能测试的基本概念 性能测试:是指在特定情况下测试系统如何执行的。资源的使用、可扩展性和可靠性也是性能测试的范畴。性能测试是性能工程的一个子集,主要发现软件架构以及设计导致的性能问题。 性能测试的目标:主要目标是测出系统运行的性能指标基线,我们在测试中也可能测试一些业界定义的性能指标基线。

性能测试的基本概念

性能测试:是指在特定情况下测试系统如何执行的。资源的使用、可扩展性和可靠性也是性能测试的范畴。性能测试是性能工程的一个子集,主要发现软件架构以及设计导致的性能问题。
性能测试的目标:主要目标是测出系统运行的性能指标基线,我们在测试中也可能测试一些业界定义的性能指标基线。性能测试的目的不是寻找应用程序的缺陷,它更加重要的目的是测试基线以及程序的标准性能。性能测试特征就是关注测试性能测试的结果 以及持续的监控。

性能测试工具分类

性能测试工具主要包括服务端性能测试工具和客户端性能测试工具。本次培训侧重于服务端性能测试的讲座

服务端性能测试工具工作原理

服务端性能测试工具仿真度

协议模拟:是性能测试工具直接模拟客户端向服务端下发的请求协议。
客户模拟 :是性能测试工具间接的模拟客户向服务端下发的请求协议,它是通过驱动客户端界面操作,由客户端程序向服务端下发请求协议。

性能测试工具工作原理:协议模拟

对于消费者用户,经常使用浏览器上网,然后在地填栏中输入网址,然后回车,即可看到想要看的网站页信息。但是就这样一个小小的回车操作,浏览器为了把网页展现在用户面前,需要调用大量的HTTP请求。这些请求之间是并发的(HTTP1协议,浏览最高支持6个并发。HTT2协议,浏览器可以并发到100-200)。通过这些HTTP请求来获得页面上的各种显示元素(图片、按钮、表格等)。大家可以在打开浏览器按F12按钮并切换到network 页面,可以查看到浏览器下发HTTP请求的瀑布图。
每一个终端用户的操作都是一个瀑布图,下图是三个终端用户坐标图,用以说明服务端与客户端之间的关系,以及客户端的瀑布图对服务端产生压力的原理性说明。
性能测试工具对服务端进行性能测试,首先要做的就是先仿真单个用户,再通过单个用户延伸出多个用户。多个用户模拟,性能测试工具大部分采用多线程实现,一个线程通过执行HTTP脚本仿真一个用户,用户的并发请求,线程通过并发执行HTTP请求实现。

性能测试工具协议模拟仿真能力对比

目前业界的性能测试基本都以协议协议模拟为主,只有kylinTOP测试与监控平台同时支持协议模拟和客户模拟两种方式。这两种方式的优缺点上面也介绍了。下面我们重点看一下协议模型仿真度对比情况。从下图看只有“kylinTOP测试与监控平台”提供的协议的精准度最高。

kylinTOP测试与监控平台能力

性能测试工具的架构图

一款好的性能测试工具的应当是分布式系统。目前业界大部分性能测试工具都是C/S架构(如:loadRunner ,Jmeter),kylinTOP测试与监控平台架构是采用B/S架构。
但是它们都有一个共同的特征,执行器(用于性能执行脚本)可以分布在多台机器上,用于支撑高并发的场景。下图是以kylinTOP测试与监控平台为原型的系统架构图,以供大家学习和加深理解性能测试工具的体系结构。

性能测试工具基本操作步骤

下图以"kylinTOP测试与监控平台"性能测试的基本操作为原型画出的一张性能测试的基本流程。其它性能工具的操作流程基本相似。它们之间的差异点主要体现在对每个操作小步骤的能力支撑的程度的高低。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
9天前
|
机器学习/深度学习 JSON 算法
实例分割笔记(一): 使用YOLOv5-Seg对图像进行分割检测完整版(从自定义数据集到测试验证的完整流程)
本文详细介绍了使用YOLOv5-Seg模型进行图像分割的完整流程,包括图像分割的基础知识、YOLOv5-Seg模型的特点、环境搭建、数据集准备、模型训练、验证、测试以及评价指标。通过实例代码,指导读者从自定义数据集开始,直至模型的测试验证,适合深度学习领域的研究者和开发者参考。
45 2
实例分割笔记(一): 使用YOLOv5-Seg对图像进行分割检测完整版(从自定义数据集到测试验证的完整流程)
|
10天前
|
安全 Java 数据库
shiro学习一:了解shiro,学习执行shiro的流程。使用springboot的测试模块学习shiro单应用(demo 6个)
这篇文章是关于Apache Shiro权限管理框架的详细学习指南,涵盖了Shiro的基本概念、认证与授权流程,并通过Spring Boot测试模块演示了Shiro在单应用环境下的使用,包括与IniRealm、JdbcRealm的集成以及自定义Realm的实现。
26 3
shiro学习一:了解shiro,学习执行shiro的流程。使用springboot的测试模块学习shiro单应用(demo 6个)
|
15天前
|
Java 流计算
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
31 1
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
|
5天前
|
jenkins 测试技术 持续交付
提升软件测试效率的实用技巧与工具
【10月更文挑战第12天】 本文将深入探讨如何通过优化测试流程、引入自动化工具和持续集成等策略,来显著提高软件测试的效率。我们将分享一些实用的技巧和工具,帮助测试人员更高效地发现和定位问题,确保软件质量。
16 2
|
8天前
|
机器学习/深度学习 监控 计算机视觉
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
本文介绍了如何使用YOLOv7进行目标检测,包括环境搭建、数据集准备、模型训练、验证、测试以及常见错误的解决方法。YOLOv7以其高效性能和准确率在目标检测领域受到关注,适用于自动驾驶、安防监控等场景。文中提供了源码和论文链接,以及详细的步骤说明,适合深度学习实践者参考。
68 0
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
9天前
|
机器学习/深度学习 并行计算 数据可视化
目标分类笔记(二): 利用PaddleClas的框架来完成多标签分类任务(从数据准备到训练测试部署的完整流程)
这篇文章介绍了如何使用PaddleClas框架完成多标签分类任务,包括数据准备、环境搭建、模型训练、预测、评估等完整流程。
30 0
目标分类笔记(二): 利用PaddleClas的框架来完成多标签分类任务(从数据准备到训练测试部署的完整流程)
|
9天前
|
机器学习/深度学习 数据采集 算法
目标分类笔记(一): 利用包含多个网络多种训练策略的框架来完成多目标分类任务(从数据准备到训练测试部署的完整流程)
这篇博客文章介绍了如何使用包含多个网络和多种训练策略的框架来完成多目标分类任务,涵盖了从数据准备到训练、测试和部署的完整流程,并提供了相关代码和配置文件。
20 0
目标分类笔记(一): 利用包含多个网络多种训练策略的框架来完成多目标分类任务(从数据准备到训练测试部署的完整流程)
|
9天前
|
机器学习/深度学习 XML 并行计算
目标检测实战(七): 使用YOLOX完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
这篇文章介绍了如何使用YOLOX完成图像目标检测任务的完整流程,包括数据准备、模型训练、验证和测试。
47 0
目标检测实战(七): 使用YOLOX完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
9天前
|
机器学习/深度学习 编解码 监控
目标检测实战(六): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
这篇文章详细介绍了如何使用YOLOv8进行目标检测任务,包括环境搭建、数据准备、模型训练、验证测试以及模型转换等完整流程。
170 0
目标检测实战(六): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
9天前
|
机器学习/深度学习 算法 PyTorch
目标检测实战(五): 使用YOLOv5-7.0版本对图像进行目标检测完整版(从自定义数据集到测试验证的完整流程)
本文详细介绍了使用YOLOv5-7.0版本进行目标检测的完整流程,包括算法介绍、环境搭建、数据集准备、模型训练、验证、测试以及评价指标。YOLOv5以其高精度、快速度和模型小尺寸在计算机视觉领域受到广泛应用。
67 0
目标检测实战(五): 使用YOLOv5-7.0版本对图像进行目标检测完整版(从自定义数据集到测试验证的完整流程)