性能测试学习笔记

一、性能测试是什么?

1.生活案例:

学校选课系统,就会经常崩溃!!!!

2.性能测试的定义

测试人员借助测试工具,模拟系统在不同场景下,对应的性能指标是否达到预期

3.性能测试和功能测试的区别

功能测试性能测试
人工执行测试工具执行
不管在什么场景下,只要能跑起来就行软件在极端情况下,是否能正常运行

4.什么样的表现是性能好的表现,什么样的表现是性能不好的表现?

软件1:打开首页消耗1ms,软件2:打开首页消耗1s

所以请问那个软件性能好呢?

5.影响一个软件性能因素有哪些?

软件硬件用户
算法、编程语言...服务器CPU利用路、内存、磁盘操作频率、cpu核心数...用户并发数,用使用时长,访问频率...

二、为什么要做性能测试?

  • 获取系统性能的指标,作为性能指标的基准(软件摸底)
  • 验证系统的性能指标是否达到
  • 发现性能瓶颈,内存泄漏等问题
  • 系统正常情况下的最大容量
  • 帮助系统运维部门找到更好的规划硬件配置

三、性能测试常见的术语以及性能测试的衡量指标(面试题

1.并发用户数:大量用户同时发送同一个请求

        业务层面的并发用户数:指的是同时向服务器发送请求的用户数量

        后端服务器层面的并发用户数:指的是同时向服务器发送请求的请求数量

2.响应时间:

用户响应时间:用户发出请求到接受到响应的这段时间

请求响应时间:服务器收到请求发出响应的这段时间

影响一个软件的响应的因素:数据库性能、网络带宽、服务器处理性能、软件的算法、逻辑、用户设备

3.事务响应时间

4.每秒事务通过的数量

5.点击量

6.点击率:http的请求率

7.吞吐量:用户一次请求的数据交互量

8.吞吐率:吞吐量/时间(吞吐率越高,性能越高)

9.思考时间:用户操作页面时候调用接口的间隔时间

10.资源利用率:不同系统资源的使用的情况,如cpu,硬盘

四、性能测试的分类

基准性能测试让系统在正常情况下,观察软件性能指标场景:软件刚上线进行性能摸底
负载性能测试让系统处于一定的压力情况下,观察系统性能指标场景:相当于在瓶颈测试
压力测试让系统处于饱和状态下,观察系统性能指标场景:在水快溢出的时候
可靠性测试验证系统在一个时间段内运行,在这个运行时间段,观察系统各项性能的指标是不是正常的

五、性能测试的流程

功能测试的流程:需求分析-->测试计划-->测试设计-->测试执行-->测试评估-->上线

性能测试的流程:需求分析-->测试计划-->选择性能测试工具-->性能测试脚本编写-->测试执行-->测试评估(产出报告)-->上线

补充:性能测试中出现的不符合预期的情况叫做性能瓶颈,修复的过程是优化

六、LoadRunner学习

1.LoadRunner介绍

LoadRunner是一种适用于许多软件体系架构的自动负载测试工具,从用户关注的响应时间、吞吐量, 并发用户和性能计数器等方面来衡量系统的性能表现,辅助用户进行系统性能的优化

2.LoadRunner组成

LoadRunner主要包括三个前台功能组件,分别为VuGen(虚拟用户脚本生成器)、Controller(测 试控制器)和Analysis(结果分析器)。系统会自动调用后台功能组件LG(负载生成器)和Proxy(用户代 理)来完成性能测试工作。

Virtual User GeneratorVuGen 是录制与便携脚本的地方。通过录制或编写脚本来模拟用户的行为,录制好的脚本是不同语言表达的文本文件,在LG执行时被解析和执行。脚 本录制和回放过程是在Proxy支持下完成的。
Controller设计场景、运行场景,是执行负载测试管理和监控的中心。在这里指定具体的性能测试方案,执行性能测试,收集测试 数据,监控测试指标。监控工具将测试过程中收集到的客户机、服务器和网络性能指标数据显示在监控页面 上,便于测试人员对系统表现进行随时掌握。
Analysis对测试过程中收集到的各种性能数据进行计算、汇总和处理,生成各种图表和报 告,为系统性能测试结果分析提供支持。

3.下载安装包

Win10下LoadRunner12 下载安装汉化图文教程(含LoadRunner安装包)_loadrunner12下载-CSDN博客

七、自带的系统

1.WebTours学习

1.1启动方式

进入WebTours的目录找到S塔塔Server.bat

启动窗口(包含ip)

 1.2配置

找到端口号

成功页面

用户信息(第一行就是密码)

八、脚本录制学习

VSG使用

1.创建

 

 如何确定你要测试的程序用的是什么协议?

找开发问问

 2.成功启动

九、脚本加强

1.事务插入

事务的状态默认情况下是 LR_AUTO。一般情况下,我们也不需要修改,除非在手工编写代码时,有可 能需要手动设置事务的状态。可以通过步骤导航器来查看步骤的参数选项。

lr_start_transaction("login");//事务开始函数

	web_submit_form("login.pl", 
		"Snapshot=t3.inf", 
		ITEMDATA, 
		"Name=username", "Value=test08", ENDITEM, 
		"Name=password", "Value=test", ENDITEM, 
		LAST);
lr_end_transaction("login", LR_AUTO);//事务结束函数

2.插入集合

lr_rendezvous("rendezvous1");

注意:集合点经常和事务结合起来使用。集合点只能插入到Action 部分,vuser_init和vuser_end 中不 能插入集合点。

3.插入检查点

对页面上的元素的检查

注意:要放在对应检查的url前面

web_reg_find("Fail=NotFound",
		"Search=All",
		"SaveCount=",
		"Text= Don't forget to sign off when you're done!",
		LAST);

4.参数化

如果用户在录制脚本过程中,填写提交了一些数据,比如要增加数据库记录。这些操作都被记录到了脚 本中。当多个虚拟用户运行脚本时,都会提交相同的记录,这样不符合实际的运行情况,而且有可能引 起冲突。为了更加真实的模拟实际环境,需要各种各样的输入。

注意:参数化完成后要调整log的打印还有运行次数

 

5.打印日志

lr_log_message
lr_ouput_message

十、设计测试场景(Controller)

1.启动

VUG

Controller

设计场景

...

  • 12
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_62921710

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值