目录
前言:
1.什么是性能测试
1.1生活中遇到的软件问题
1.2性能测试的定义
1.3性能测试和功能测试有什么区别
1.4性能的好坏的区分
1.5影响一个软件性能的因素
2.为什么要进行性能测试
3.性能测试常见的术语以及衡量指标
3.1并发
3.2用户数
3.3响应时间
3.3.1用户响应时间
3.3.2请求响应时间
3.3.3影响软件响应时间的因素
3.4事务响应时间
3.5每秒事务通过数量
3.6点击量
3.7点击率
3.8吞吐量
3.9吞吐率
3.10思考时间
3.11资源利用率
4.性能测试分类
4.1基准性能测试定义
4.2负载性能测试
4.3压力性能测试
4.4可靠性测试
5.性能测试执行流程
结束语:
在上一节中小编主要是基于我们之前写过的一篇博客以及在测试阶段所学习的Junit5对博客系统的前端页面进行了一些基础的自动化测试,帮助我们熟悉了如何使用Junit进行自动化测试。接下来小编将与大家分享一下有关于性能测试一些基础知识。
在生活中我们也会经常遇到软件的性能问题,比如在双十一的时候,淘宝会由于用户访问的次数和数量太大,从而导致奔溃,还有在春运的时候,12306也会经常出现各种各样的问题,在某个消息突然爆火的时候微博也经常会出现奔溃。这些都是我们经常在生活中遇到的问题。
性能测试就是测试人员借助性能测试工具,模拟系统在不同场景下,对应的性能指标是否达到预期。
在测试方式上:
在场景方面:
究竟什么样的软件属于软件性能好的表现,什么样的软件属于软件性能不好的表现呢?
比如现在有两个软件,软件1的登录时间是3s,而软件2的登录时间是3ms,自然从时间层面上来看当然是软件2了。在比如下面这张图中通过DAU(日活跃用户数)的比对我们可以看到活跃数越大的性能自然也就越好。
影响一个软件的性能因素有哪些呢?主要有以下几点:
①获取系统性能指标,作为性能指标的基准。
②验证系统的性能指标是否达到要求(性能需求):
③发现系统的性能瓶颈,内存泄漏等问题。
④系统正常工作的情况下的最大容量。
⑤帮助系统运维部门能更好的规划硬件配置。
下面我们来谈一下性能测试中常见的术语,以及性能测试衡量指标。
比如下面的一个场景中:一个用户使用CSND,100万个用户每隔10s访问CSDN和100万个用户同时访问CSDN。此时以上的场景中显然最后一个是并发的情况。
并发也是分场景的:
①系统用户数:系统注册的用户。
②在线用户数:成功登录系统用户数。
③并发用户数:大量的用户访问系统,此时访问的用户数,就是并发用户数量。
这里并发量的大小顺序是① < ② < ③。
在响应时间里面有分为用户响应时间,请求响应时间。接下来我们分别来看一下。
如上图所示用户的响应时间应该就是:N1 + A1 + N2 + A2 + N3 + A3 + N4
如上图所示请求响应的时间应该就是:A1 + N2 + A2 + N3 + A3
响应一个软件响应时间的因素有以下几点:
比如当你点开一个浏览器页面搜索东西的时候,从你点击搜索到页面返回一个响应的时间就是事务的响应时间。
每秒事务通过的数量=处理的事务数量 / 事务花费的时间。
每秒事务通过的数量越多自然而然说明软件性能越好。
点击量就是指用户点击的数量。
点击率 = 点击量 / 时间。
吞吐量就是指用户一次请求和服务器之间的数据交互量。
通途率 = 吞吐量 / 时间
吞吐率越高说明性能越高,反之则越低。
思考时间是指用户在对软件进行操作的时候,每一个操作中间间隔时间。
资源利用率是指不同系统资源的使用情况。包含CPU,内存,硬盘,网络。
基准性能就是让系统在正常情况下,观察软件性能指标。它的使用场景是在软件刚上线的时候进行摸底性能测试。
负载性能测试是验证软件在一定的压力情况下运行,观察性能指标是否出现了拐点。
压力性能测试是指系统处于饱和情况下,来观察系统性能指标。
可靠性测试是验证系统在一个持续的时间段内运行,在这个运行时间段,观察系统各项性能指标是否正常。比如持续一天->持续运行一周->持续运行一个月->持续运行一个季度->持续运行一年。
功能测试的执行流程:需求分析->测试计划->测试设计->测试执行->测试评估(测试报告)->上线。
性能测试的执行流程:需求分析->测试计划->选择一款性能测试工具->性能测试脚本编写->执行性能测试脚本->产出一个性能测试报告。
在性能测试中出现了不符合预期的情况,我们不把他叫做bug而是叫做性能瓶颈。在性能测试中,如果出现了性能瓶颈,开发修复的过程,叫做优化。
好了这节小编就给大分享到这里啦,希望这节对大家有关于性能测试有一个大概的了解,想要学习的同学记得关注小编和小编一起学习吧!如果文章中有任何错误也欢迎各位大佬及时为小编指点迷津(在此小编先谢过各位大佬啦!)