性能测试的概念
性能测试是指通过特定方式,对被测系统按照一定策略施加压力,获取系统 响应时间、TPS(Transaction Per Second)、吞吐量、资源利用率等性能指标,以期保证生产系统的性能能够满足用户需求的过程。
性能测试一般是指大数据量的测试
性能测试一般包含3个方面
应用在客户端性能的测试 -----b/s前端代码(js代码性能) app(app占用cpu/耗电/页面/加载速度--app专项测试)
应用在网络上性能的测试 ----- 网络问题一般运维解决 路由器/交换机/提高网速
应用在服务器端性能的测试 -----核心,不停的向服务器发送请求,来检查服务器的处理请求能力(jmeter完成)
性能测试目的
客户有明确要求,如:系统要求同时满足100用户登陆,平均每个用户登陆时 间不能超过5秒
考察目前系统性能(容量测试),需要对系统做出分析,找出系统的压力点
找出系统性能瓶颈,需要分析可能对系统造成瓶颈的逻辑业务,然后才能进行性能测试
了解系统在长时间的压力下性能状况(强度测试)
性能测试环境
硬件环境:被测服务器硬件配置,用于加压客户端的机子配置,CPU 内存等
1、被测服务器 --》和生产环境架构/部署一致,但是配置可以等比例缩小
生产环境:金士顿 型号 128G内存 服务器是戴尔
性能环境:金士顿 型号 32G内存 服务器是戴尔
2、加压客户端 --》8-16G内存 cpu i5-i7 固态硬盘256G以上(正常的家用电脑和测试电脑都能具备)
软件环境:被测系统的架构,前端、中间件、服务器(这里指运行系统软件服务器,如tomcat)、数据库、测试环境部署信息以及性能测试工具信息
保证和生产环境版本一致、参数配置也一致
网络环境:找出系统性能瓶颈可以在广域网环境进行,其它性能测试可以在局域 网进行,排除网络干扰
1、在局域网进行性能测试,出现性能问题之后,可以排除网络问题
2、有必要在真实的网络环境下进行一次性能测试 (测试最好全部是真实环境)
备注:性能测试的环境要独立于功能测试环境,一般在没有其它干扰被测系统的 情况下,进行性能测试
性能测试注意事项
性能测试一般在功能测试稳定的前提下进行;
修改性能测试问题的时候容易造成功能错误;比如:性能问题是代码有问题,调整好了之后性能测试没问题,要进行冒烟测试;
最后: 可以在我的VX公众号:【自动化测试老司机】免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。