【测试运维】性能测试笔记文档第2篇:性能测试分类和指标(已分享,附代码)

本系列文章md笔记(已分享)主要讨论性能测试相关知识。入门阶段:认识性能测试分类-(负载测试、压力测试、并发测试、稳定性测试),常用性能测试指标-(吞吐量、并发数、响应时间、点击数…),性能测试工具选择。性能脚本:1. LoadRunner介绍,2. 脚本录制、运行、参数化,3. 关联、检查点、事务、集合点。性能场景:1. 场景分类、场景设计、场景运行策略,2. 资源监控、SLA、IP Wizard应用。性能分析:1. 摘要报告、事务图表、图表合并,2. 交叉结果、拐点分析、Web项目资源分析。

全套笔记和代码自取移步: gitee仓库获取完整文档和代码

感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~


共 5 章,25 子模块

性能测试基础知识

目标

理解什么是性能测试
掌握性能测试的基础分类
熟悉性能测试的常用指标

LoadRunner 11安装

一、安装步骤

  1. 解压 - Software_HP_LoadRunner_11.00_T7177_15013.iso
  2. 启动安装程序 - setup.exe(提示:权限-鼠标右键->以管理员身份运行);
  3. 根据安装提示进行配置并点击下一步操作,直到安装完成;
  4. 修改注册许可证

注意:
1). LoadRunner版本与操作系统的对应关系:
① LoadRunner 11版本推荐使用64位Windows 7旗舰版系统;
② LoadRunner 12版本推荐使用64位Windows 10专业版或教育版系统;
2). 自动安装LoadRunner必要的依赖文件时,如遇要求重启电脑,则重启后再进行安装即可;
3). 最好新建文件夹(如:C:\HP\LoadRunner)并且避免安装路径中有中文和空格;
(原因:如果默认安装路径,则有可能导致LR自带的机票网站会出现登录异常;)

二、安装图解

2.1 解压Software_HP_LoadRunner_11.00_T7177_15013.iso后文件

loadrunner

鼠标右键->以管理员身份运行:setup.exe

2.2 点击安装选项

loadrunner

点击:LoadRunner 完整安装程序

2.3 确定安装loadrunner依赖程序

loadrunner

点击:确定

2.4 异常【重要】

loadrunner

处理办法:重启电脑

2.5 开始安装LoadRunner

loadrunner

点击:下一步

2.6 许可协议

loadrunner

点击:我同意、下一步

2.7 客户信息

loadrunner

处理:默认或根据需求填写 点击:下一步

2.8 选择安装文件夹【重要】

loadrunner

处理:新建指定文件夹(避免中文及空格、避免默认路径) 点击:下一步

2.9 确认安装

loadrunner

点击:下一步

2.10 安装中

loadrunner

处理:耐心等待

2.11 安装完成

loadrunner

点击:完成

2.12 查看-安装完成文件

loadrunner

点击:开始菜单-HP LoadRunner

3. 注册许可证-使用图

3.1 修改前

loadrunner

说明:使用用户类型:临时

3.2 修改后

loadrunner

说明:使用用户类型:永久

3.3 操作步骤

lf_file.rar文件下载

  1. 下载lf_file.rar文件,
  2. 将 lm70.dll、mlr5lprg.dll 两个文件复制并替换到LR11安装目录下的bin文件夹下
  3. 运行 lr删除注册表.exe 文件
  4. 输入注册信息(New License,以下注册码任选其一即可)
    1). Global-100的注册码:AEACFSJI-YJKJKJJKEJIJD-BCLBR
    2). Web-10000的注册码:AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB
    3). 最高支持6.5w个并发的注册码:AEACFSJI-YJKJKJJKEJIJD-BCLBR

1) lf_file.rar文件

loadrunner

2) 复制替换 lm70.dll、mlr5lprg.dll(位置:lr安装目录下bin目录)

loadrunner

3) 运行 lr删除注册表.exe 文件

loadrunner

4) 输入注册信息(New License)

启动注册窗口

loadrunner

loadrunner

loadrunner

性能测试流程

流程

1. 性能测试需求分析
2. 性能测试计划
3. 性能测试用例
4. 测试脚本编写
5. 测试场景设计
6. 测试场景运行
7. 场景运行监控
8. 运行结果分析
9. 系统性能调优
10. 性能测试报告总结
1 性能测试需求分析

需求分析就是把真正需求搞清楚

例如:
    1). 公司需要对所有的功能都进行性能测试;
    2). 用户登录响应时间小于3秒钟;
    3). 系统支持20万用户并发访问;
2 性能测试计划
1). 性能测试计划是对性能测试过程描述的重要过程;
2). 在对需求文档经过认真分析后,作为性能测试管理人员,需要编写的第一份文档就是性能测试计划;
3). 性能测试计划中,需要阐述产品、项目的背景,将前期的需要测试性能需求明确,并落实到文档中。
3 性能测试用例

性能测试需求最终要体现在性能测试用例设计中,性能测试用例应结合用户应用系统的场景,设计出相应的性能测试用例,用例应能覆盖到测试需求。

提示:
    1). 明确哪些功能业务量较大;
    2). 明确系统预期的用户规模、并发用户数、在线用户数;
    3). 明确系统业务的处理能力要求,如:TPS、响应时间、系统资源利用率等;
    TPS :(Transaction per second)事务数/4). 详细的操作步骤及场景的搭建模式
4 测试脚本编写

性能测试用例编写完成以后,接下来就需要结合用例的需要,进行测试脚本的编写工作。

注意:
    1). 协议的正确选用;
    2). 脚本保证其正确性,去除冗余代码;
    3). 注重编码的规范和代码的编写质量。
5 测试场景设计

测试场景设计的一个重要原则就是依据测试用例,把测试用例设计的场景展现出来。

提示:
    1). 虚拟用户数量及启动虚拟用户方式
    2). 场景的相关设置(如:集合点)
    3). 脚本是否存在依赖关系(登录与注册)
6 测试场景运行

测试场景运行是关系到测试结果是否准确的一个重要过程。

注意:
    1). 负载的测试机是否能够运行设定的虚拟用户数;
    2). 有没有“预热”的过程;
    3). 有没有模拟用户的真实环境;
    4). 性能用例运行次数是否过少。
7 场景运行监控

场景运行监控,可以在场景运行时决定要监控那些数据,便于后期分析性能测试结果。

1). 应用性能测试工具的重要目的就是可以提取到本次测试关心的数据指标内容;
2). 性能测试工具利用应用服务器取得在负载过程中相关计数器的性能指标。
(计数器:计算、统计性能指标的工具)

注意:尽量搜集与系统测试目标相关信息,无关内容不必进行监控。
8 运行结果分析

性能测试执行过程中,性能测试工具搜集相关性能测试数据,待执行完成后,这些数据会存储到数据表或者 其他文件中,为了定位系统性能问题,我们需要系统分析这些性能测试结果。

提示:
    1). 一般使用“拐点分析”方法,利用性能计数器曲线图上的拐点进行分析的方法。
    (基本思想就是性能产生瓶颈的主要原因就是因为某个资源的使用达到了极限,此时表现为随着压力的增大,
    系统性能却出现急剧下降,就产生了“拐点”现象。)
9 系统性能调优

性能测试分析人员经过对结果的分析以后,有可能提出系统存在性能瓶颈。

提示:
    1). 调优人员(开发人员、数据库管理员、系统管理员、网络管理员、性能测试分析人员)相关人员对系统进行调整;
    2). 验证-性能测试人员继续进行第二轮、第三轮...的测试,与以前的测试结果进行对比,从而确定经过调整以后的
    系统性能是否有提升。

注意事项:

系统调优由易到难的先后顺序如下:
    1. 硬件问题;
    2. 网络问题;
    3. 应用服务器、数据库等配置问题;
    4. 源代码、数据库脚本问题;
    5. 系统架构问题。
10 性能测试报告总结

性能测试总结要包含以下内容:

1). 性能测试需求覆盖情况,性能测试过程中出现的问题,如何去分析、调优、解决的;
2). 测试人员、进度控制与实际执行偏差和性能测试过程中遇到各类风险是如何控制的;
3). 经过该项目性能测试后,有那些经验和教训等内容。

性能测试工具-LoadRunner

学习目标
1. 理解基于VuGen的脚本录制
2. 掌握参数化的使用方法
3. 掌握关联的使用方法
4. 掌握检查点的使用方法
5. 掌握事务的使用方法
6. 掌握集合点的应用

LoadRunner介绍

一、LoadRunner简介

LoadRunner是一种工业级标准的性能负载测试工具;可以模拟上千万用户实施测试,并在测试时可实时检测应用服务器及服务器硬件的各种数据,来查找和确认存在的性能瓶颈;

支持多种协议,如:Web(HTTP/HTML)、Windows Sockets、FTP、ODBC、MS SQL Server等协议

二、LoadRunner组成【非常重要】

组成:

1. Virtual User Generator(VuGen)
2. Controller 
3. Analysis

提示:

1. VuGen:脚本生成器-脚本录制、编辑
2. Controller:控制器-设计场景、运行、监控
3. Analysis:测试结果分析

三、 理解LoadRunner的三大工具(扩展)

为了更好的理解LoadRunner性能测试三大工具作用,我们先回顾下不使用测试工具时,如果进行性能测试…

需求:

软件系统支持100人同时登录

实施:

1.100个员工及100台电脑,每个员工注册账号OK,环境OK,输入账号、密码完成...鼠标放到登录按钮上;
2. 领导拿个大喇叭,高喊:1...2...3
3. 相关人员统计平均登录时间及登录前、登陆后的服务器CPU、内存等使用情况

LoadRunner的执行原理:【重点】

1. VuGen:相当于打开登录页面、输入账号、输入密码、点击登录
2. Controller:手拿大喇叭的领导...
3. Analysis:相当与各个统计数据的相关人员

组成:

1. Virtual User Generator(VuGen)
2. Controller 
3. Analysis

提示:

1. VuGen:脚本生成器-脚本录制、编辑
2. Controller:控制器-设计场景、运行、监控
3. Analysis:测试结果分析

三、 理解LoadRunner的三大工具(扩展)

为了更好的理解LoadRunner性能测试三大工具作用,我们先回顾下不使用测试工具时,如果进行性能测试…

需求:

软件系统支持100人同时登录

实施:

1.100个员工及100台电脑,每个员工注册账号OK,环境OK,输入账号、密码完成...鼠标放到登录按钮上;
2. 领导拿个大喇叭,高喊:1...2...3
3. 相关人员统计平均登录时间及登录前、登陆后的服务器CPU、内存等使用情况

LoadRunner的执行原理:【重点】

1. VuGen:相当于打开登录页面、输入账号、输入密码、点击登录
2. Controller:手拿大喇叭的领导...
3. Analysis:相当与各个统计数据的相关人员

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/370118.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

口味多样的碱水贝果面包,香气饱满松松软软

这两天在吃一款碱趣贝果面包,感觉味道很不错,它是一种加热一下就可以吃的手工面包,口感十分独特。这款面包有着清香有韧性的表皮,里面松软可口,加热后更是香气四溢。 除了标准的原味全麦之外,碱趣贝果面包还…

提取人声消除背景音乐的工具?分享4款!

音乐是生活中不可或缺的调味品,我们常常会遇到一些音乐中的对话或人声干扰了我们的聆听体验。那么,有没有一种方法可以消除这些干扰,只留下纯净的背景音乐呢?答案是肯定的,下面为大家介绍4款能够消除人声保留背景音乐的…

LNMP.

一.mysl配置 1.安装mysql yum install mysql-server -y 2.进入mysql配置文件目录 cd /etc/my.cnf.d3.编辑mysql配置文件 vim mysql-server.cnf 在[mysqld]中添加: character-set-serverutf84.启动mysql服务 systemctl start mysqld5.登入mysql mysql 6.创建数据库 cre…

泡泡清新文艺的微社区系统PHP源码

泡泡微社区,小巧而强大,为您带来卓越的社区交流体验。 凭借GoZinc的先进架构,泡泡在保持轻盈身姿的同时,功能一应俱全。前端采用Vue3匠心打造,界面清新简约,三栏式布局仿若Twitter,让您一见倾心…

PyTorch 2.2 中文官方教程(十五)

(beta)计算机视觉的量化迁移学习教程 原文:pytorch.org/tutorials/intermediate/quantized_transfer_learning_tutorial.html 译者:飞龙 协议:CC BY-NC-SA 4.0 提示 为了充分利用本教程,我们建议使用这个C…

Vue3页面自适应,表格滚动高度

适用场景:在网页表格中我们需要获取页面剩余高度来为表格做滚动的时候就需要使用响应高度,可以使用原生calc来计算,但是calc有个缺陷就是,有可能要去计算多个盒子高度,使用下面的代码就可以直接获取当前元素到顶部的距…

考研中常见的算法-逆置

元素逆置 概述:其实就是将 第一个元素和最后一个元素交换,第二个元素和倒数第二个元素交换,依次到中间位置。用途:可用于数组的移动,字符串反转,链表反转操作,栈和队列反转等操作。 逆置图解 …

算力不贵训练轻松应对,GpuMall智算云高校科研人员力荐

为你科普一个算力租赁平台—“GpuMall智算云“,想必你之前已经了解过一些租赁平台,但肯定遇到了:要么机型少?要么配置环境复杂?要么单机消费贵?等各方面的问题。 希望你一定要来试试,接下来我就…

使用 SortableJS 组件的 Blazor 可排序列表

作者:Burke Holland 排版:Alan Wang 在 Web 应用程序中,一个常见功能部分是可排序列表。SortableJS 是我最喜欢的 JavaScript 库之一,在进行 Blazor 开发时我很想念它。为了解决这个问题,我决定包装 SortableJS 库&…

【退役之重学前端】vite, vue3, vue-router, vuex, ES6学习日记

学习使用vitevue3的所遇问题总结&#xff08;2024年2月1日&#xff09; 组件中使用<script>标签忘记加 setup 这会导致Navbar 没有暴露出来&#xff0c;导致使用不了&#xff0c;出现以下报错 这是因为&#xff0c;如果不用setup&#xff0c;就得使用 export default…

网络攻击和渗透中:注入信息无回显?(给盲注戴上眼镜)靶机实战利用Ecshop 2.x/3.x SQL注入/任意代码执行漏洞

网络攻击和渗透中:注入信息无回显?(给盲注戴上眼镜)靶机实战利用Ecshop 2.x/3.x SQL注入/任意代码执行漏洞。 工具简介: 平常的漏洞检测或漏洞利用需要进一步的用户或系统交互。但是一些漏洞类型没有直接表明攻击是成功的。如Payload触发了却不在前端页面显示。(像ssrf,XX…

vscode无法ssh远程连接到服务器:远程主机可能不符合 glibc 和 libstdc++ VS Code 服务器的先决条件

vscode无法ssh远程连接到服务器&#xff1a;远程主机可能不符合 glibc 和 libstdc VS Code 服务器的先决条件 今天vscode自动更新后无法连接到远程服务器了&#xff0c;提示"远程主机可能不符合 glibc 和 libstdc VS Code 服务器的先决条件" 并且命令窗口一直显示&qu…

【EI会议征稿通知】第三届智能控制与应用技术国际学术会议(AICAT 2024)

第三届智能控制与应用技术国际学术会议&#xff08;AICAT 2024&#xff09; 2024 3rd International Symposium on Artificial Intelligence Control and Application Technology 2024年第三届智能控制与应用技术国际学术会议&#xff08;AICAT 2024&#xff09;定于2024年5月…

ubuntu20.04安装最新版nginx

前言 记录下ubuntu服务器安装nginx 步骤 安装最新版本的 Nginx 可以通过添加 Nginx 官方的软件仓库并更新软件包信息。以下是在 Ubuntu 20.04 上安装最新版本 Nginx 的步骤&#xff1a; 添加 Nginx 软件仓库&#xff1a; 打开终端并执行以下命令&#xff1a; sudo sh -c echo…

字符串左旋

题目&#xff1a;字符串左旋 内容&#xff1a;实现一个函数&#xff0c;可以左旋字符串中的K个字符。 例如&#xff1a; ABCDEF左旋一个字符可以得到BCDEFA ABCDEF左旋两个字符可以得到CDEFAB 方法一&#xff1a;移动字符 #include <stdio.h> #include <string.h>c…

BUUCTF-Real-[ThinkPHP]2-Rce1

任意代码执行漏洞 ThinkPHP 2.x版本中&#xff0c;使用preg_replace的/e模式匹配路由&#xff1a; $res preg_replace((\w).$depr.([^.$depr.\/])e, $var[\\\1\]"\\2";, implode($depr,$paths)); 导致用户的输入参数被插入双引号中执行&#xff0c;造成任意代码执行…

Windows Server 2019 DNS服务器搭建

系列文章目录 目录 系列文章目录 文章目录 前言 一、DNS服务器是什么&#xff1f; 二、配置服务器 1.实验环境搭建 1)实验服务器配置和客户端 2)实验环境 2.服务器配置 正向解析配置 反向解析 实验验证 文章目录 Windows Server 2003 Web服务器搭建Windows Server…

【c/python】GtkBox

一、GtkBox及C语言示例 GtkBox是一个容器部件&#xff0c;用于在GTK&#xff08;GIMP Toolkit&#xff09;应用程序中水平或垂直地排列多个子部件。以下是一个简单的例子&#xff0c;展示了如何在一个基本的GTK应用程序中使用GtkBox来垂直排列两个按钮&#xff1a; 首先&#…

OpenAI开放新功能,可通过@一键调用任意GPTs

人工智能技术的快速发展为我们的生活带来了许多便利和创新。作为人工智能领域的重要成果之一&#xff0c;OpenAI的GPT&#xff08;Generative Pre-trained Transformer&#xff09;模型在自然语言处理方面取得了巨大的突破。 近日&#xff0c;OpenAI宣布推出了GPT Mentions功能…

VC++中使用OpenCV绘制直线、矩形、圆和文字

VC中使用OpenCV绘制直线、矩形、圆和文字 在VC中使用OpenCV绘制直线、矩形、圆和文字非常简单&#xff0c;分别使用OpenCV中的line、rectangle、circle、putText这四个函数即可。具体可以参考OpenCV官方文档&#xff1a;https://docs.opencv.org/4.x/index.html 下面的代码展…