测试面试--性能测试 如何做的 如何分析的

简介: 性能测试 如何做的 如何分析的

1、性能测试——分析结果是怎么做的?


   以下相关指标分析时需注意:

1.响应时间不要光看平均值,平均值不靠谱。要求最好定成:99.9%请求必须<1s ,所有的平均响应时间必须<1s,这两个条件限制;

2.响应时间要和吞吐量TPS/QPS挂钩;

image.png

系统的性能如果只看吞吐量,不看响应时间是没有意义的。我的系统可以顶10万请求,但是响应时间已经到了5秒钟,这样的系统已经不可用了,这样的吞吐量也是没有意义的。 我们知道,当并发量(吞吐量)上涨的时候,系统会变得越来越不稳定,响应时间的波动也会越来越大,响应时间也会变得越来越慢,而吞吐率也越来越上不去(如上图所示),包括CPU的使用率情况也会如此。所以,当系统变得不稳定的时候,吞吐量已经没有意义了。吞吐是有意义的时候仅当系统稳定的时候。 所以,吞吐量的值必须有响应时间来卡。比如:TP99小于100ms的时候,系统可以承载的最大并发数是1000qps。这意味着,我们要不断的在不同的并发数上测试,以找到软件的最稳定时的最大吞吐量。

3.响应时间吞吐量要和成功率挂钩; 不难理解,如果请求可以并发10w,但是成功率只有40%,那也没什么用。性能测试的失败率的容忍应该是非常低的。对于一些关键系统,成功请求数必须在100%,一点都不能含糊。 4.CPU、内存等硬件资源占比持续超过90%,说明性能存在瓶颈; 5.带宽波动起伏很大,说明带宽受限;


2、性能测试做过吗?你们公司的性能测试流程是怎样的?


性能测试我们是在XX项目里面做的性能,主要通过Jmeter对XX功能做的并发测试,并发了XX个用户。我们是这样来做的:

   1、首先就是分析并确定性能需求:包括性能指标的确定:并发数的评估,响应时间,cpu和内存,事务成功率,TPS,吞吐量等。)

   2、然后就是搭建性能测试环境,环境必须要纯净。

   3、然后就是录制脚本以及调试脚本(包括:插入事务、检查点、关联、参数化、集合点等)

   4、然后使用控制器对脚本增压、持续以及减压并执行脚本。增加对服务器的监控。

   5、最后通过分析器分析性能测试结果。


3、完成一个性能测试项目,请阐述你的实施流程


测试设计阶段:

   1)了解被测系统的性能需求,定义测试目标和范围;

   2)了解系统的技术信息,如系统架构等;

   3)确定测试方案、进度安排,并制定测试计划,场景设置方案,及需要收集的测试数据;

   4)同相关人员协商讨论测试方案;

   5)准备数据收集模板;不同项目的性能测试,需要收集的数据不同;针对性的制定一个模板,更符合需要;


(1)测试环境准备


   1)技术准备;选择性能测试工具;测试方案中涉及到的技术问题;测试数据的收集。方案实现;如:如何监控系统资源等;

   2)搭建测试环境;

   3)创建初始数据;如虚拟用户使用的账号等;


(2)测试执行阶段:


   1)录制脚本;

   2)调试脚本;

   3)执行场景;

   4)收集测试数据,并简单整理;


(3)测试分析阶段:


   1)分析测试数据,报告整理

目录
相关文章
|
数据采集 监控 机器人
浅谈网页端IM技术及相关测试方法实践(包括WebSocket性能测试)
最开始转转的客服系统体系如IM、工单以及机器人等都是使用第三方的产品。但第三方产品对于转转的业务,以及客服的效率等都产生了诸多限制,所以我们决定自研替换第三方系统。下面主要分享一下网页端IM技术及相关测试方法,我们先从了解IM系统和WebSocket开始。
425 4
|
6月前
|
监控 Java 关系型数据库
面试性能测试总被刷?学员真实遇到的高频问题全解析!
面试常被性能测试题难住?其实考的不是工具,而是分析思维。从脚本编写到瓶颈定位,企业更看重系统理解与实战能力。本文拆解高频面试题,揭示背后考察逻辑,并通过真实项目训练,帮你构建性能测试完整知识体系,实现从“会操作”到“能解决问题”的跨越。
|
11月前
|
消息中间件 架构师 Java
美团面试:对比分析 RocketMQ、Kafka、RabbitMQ 三大MQ常见问题?
美团面试:对比分析 RocketMQ、Kafka、RabbitMQ 三大MQ常见问题?
美团面试:对比分析 RocketMQ、Kafka、RabbitMQ 三大MQ常见问题?
|
10月前
|
测试技术
软考软件评测师——可靠性测试测试方法
软件可靠性是指软件在规定条件和时间内完成预定功能的能力,受运行环境、软件规模、内部结构、开发方法及可靠性投入等因素影响。失效概率指软件运行中出现失效的可能性,可靠度为不发生失效的概率,平均无失效时间(MTTF)体现软件可靠程度。案例分析显示,嵌入式软件需满足高可靠性要求,如机载软件的可靠度需达99.99%以上,通过定量指标评估其是否达标。
|
网络协议 Shell 网络安全
面试官想听的不仅是命令——如何结构化回答“容器无Shell时如何测试外网”?
“说说看,如果一个Pod的容器没有Shell,如何测试它能否访问外网?”
面试官想听的不仅是命令——如何结构化回答“容器无Shell时如何测试外网”?
|
机器学习/深度学习 人工智能 自然语言处理
MarS:微软开源金融市场模拟预测引擎,支持策略测试、风险管理和市场分析
MarS 是微软亚洲研究院推出的金融市场模拟预测引擎,基于生成型基础模型 LMM,支持无风险环境下的交易策略测试、风险管理和市场分析。
609 8
MarS:微软开源金融市场模拟预测引擎,支持策略测试、风险管理和市场分析
|
Java 数据库连接 Maven
最新版 | 深入剖析SpringBoot3源码——分析自动装配原理(面试常考)
自动装配是现在面试中常考的一道面试题。本文基于最新的 SpringBoot 3.3.3 版本的源码来分析自动装配的原理,并在文未说明了SpringBoot2和SpringBoot3的自动装配源码中区别,以及面试回答的拿分核心话术。
1173 2
最新版 | 深入剖析SpringBoot3源码——分析自动装配原理(面试常考)
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
261 11
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
266 10
|
监控 算法 Java
jvm-48-java 变更导致压测应用性能下降,如何分析定位原因?
【11月更文挑战第17天】当JVM相关变更导致压测应用性能下降时,可通过检查变更内容(如JVM参数、Java版本、代码变更)、收集性能监控数据(使用JVM监控工具、应用性能监控工具、系统资源监控)、分析垃圾回收情况(GC日志分析、内存泄漏检查)、分析线程和锁(线程状态分析、锁竞争分析)及分析代码执行路径(使用代码性能分析工具、代码审查)等步骤来定位和解决问题。
332 6