发动态

没有新消息

更多内容

霍格沃兹测试开发 北京/霍格沃兹测试开发学社
《软件测试/性能测试面试题分享》 1、做性能测试,你需要关注哪些指标? 1. 从用户角度出发响应时间 2. 站在管理员的角度考虑需要关注的性能点 响应时间 服务器资源使况是否合理 应用服务器和数据库资源使用是否合理 系统能否实现扩展 系统最多支持多少用户访问、系统最大业务处理量是多少 系统性能可能存在的瓶颈在哪里 更换那些设备可以提高性能 系统能否支持7×24小时的业务访问 3. 站在开发(设计)人员角度去考虑 架构设计是否合理 数据库设计是否合理 代码是否存在性能方面的问题 系统中是否有不合理的内存使用方式 系统中是否存在不合理的线程同步方式 系统中是否存在不合理的资源竞争 4.站在测试工程师角度考虑 连接超时 崩溃 系统交互 弱网下的运行情况 CPU使用问题 2、java语言的服务性能测试的时候,用什么命令打印线程栈信息? jstack 3、性能测试指标包括哪些 最大并发用户数,HPS(点击率)、事务响应时间、每秒事务数、每秒点击量、吞吐量、CPU使用率、物理内存使用、网络流量使用等。 前端需主要关注的点是: 响应时间:用户从客户端发出请求,并得到响应,以及展示出来的整个过程的时间。 加载速度:通俗的理解为页面内容显示的快慢。 流量:所消耗的网络流量。 后端需主要关注的是: 响应时间:接口从请求到响应、返回的时间。 并发用户数:同一时间点请求服务器的用户数,支持的最大并发数。 内存占用:也就是内存开销。 吞吐量(TPS):Transaction Per Second, 每秒事务数。在没有遇到性能瓶颈时:TPS=并发用户数*事务数/响应时间。 错误率:失败的事务数/事务总数。 资源使用率:CPU占用率、内存使用率、磁盘I/O、网络I/O。 从性能测试分析度量的度角来看,主要可以从如下几个大的维度来收集考察性能指标: 系统性能指标、资源性能指标、稳定性指标 4、如果一个需求没有明确的性能指标,要如何开始进行性能测试? 先输出业务数据,如pv、pu、时间段等,计算出大概的值,然后不断加压测到峰值 5、介绍JMeter聚合报告包括哪些内容 请求名、线程数、响应时间(50 95 99 最小 最大)错误率、吞吐量 6、如果有一个页面特别卡顿,设想一下可能的原因 后台:接口返回数据慢,查询性能等各种问题 前端:使用chrome工具调试,判断js执行久或是其他问题 网络问题 7、说一说项目中的实际测试内容 根据自己项目中的经验实话实说,有没有经验很容易露馅 8、介绍一下JMeter进行性能测试的过程 9、介绍一下JMeter和LoadRunner的区别

277阅读

3赞

评论

0 条评论

暂无评论,快来写下您的评论

推荐阅读

软件测试面试题集锦 | 性能测试篇 1、性能测试指标包括哪些? 最大并发用户数,HPS(点击率)、事务响应时间、每秒事务数、每秒点击量、吞吐量、CPU 使用率、物理内存使用、网络流量使用等。 1.1、前端需主要关注的点是? 响应时间:用户从客户端发出请求,并得到响应,以及展示出来的整个过程的时间。 加载速度:通俗的理解为页面内容显示的快慢。 流量:所消耗的网络流量。 1.2、后端需主要关注的是? 响应时间:接口从请求到响应、返回的时间。 并发用户数:同一时间点请求服务器的用户数,支持的最大并发数。 内存占用:也就是内存开销。 吞吐量(TPS):Transaction Per Second, 每秒事务数。在没有遇到性能瓶颈时:TPS=并发用户数*事务数/响应时间。 错误率:失败的事务数/事务总数。 资源使用率:CPU占用率、内存使用率、磁盘I/O、网络I/O。 1.3、从性能测试分析度量的度角来看,主要可以从如下几个大的维度来收集考察性能指标: 系统性能指标、资源性能指标、稳定性指标; 2、如果一个需求没有明确的性能指标,要如何开始进行性能测试? 先输出业务数据,如 pv、pu、时间段等,计算出大概的值,然后不断加压测到峰值; 3、介绍 JMeter 聚合报告包括哪些内容? 请求名、线程数、响应时间(50 95 99 最小 最大)错误率、吞吐量; 4、如果有一个页面特别卡顿,设想一下可能的原因? 后台:接口返回数据慢,查询性能等各种问题; 前端:使用 Chrome 工具调试,判断 JS 执行久或是其他问题; 网络问题; 5、说一说项目中的实际测试内容? 根据自己项目中的经验实话实说,有没有经验很容易露馅。 6、介绍一下 JMeter 进行性能测试的过程? 结合自己的项目经验聊。大家也可以自行搜索。 7、介绍一下 JMeter 和 LoadRunner 的区别? 详细的不展开了,最重要的是相对来说 LoadRunner 的笨重、昂贵、闭源,理念和生态都落后,而 JMeter 是开源、可定制化开发,功能强大易用,并且在互联网大厂都已经有非常成熟的落地方案(主流的互联网公司基本都在使用 JMeter+ELK+Grafana+Influxdb 这套架构),可以说是进 BAT 大厂必备技能。还不会 JMeter 的同学建议抓紧补起来。

402阅读
4赞
0评论

软件测试面试题 1、什么是性能测试?什么是负载测试?什么是压力测试? (1)性能测试:是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。 (2)负载测试:是确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。 (3)压力测试:是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。 2、性能测试包含了哪些测试? 压力测试、负载测试、并发测试、可靠测试、失败恢复测试

943阅读
2赞
0评论

软件测试 | 性能测试关注哪些指标? 问题 在工作中,使用JMeter做压力测试时,需要关注其中的哪些指标? 性能测试关注哪些指标? 考察点 面试官想了解: 是否用过 JMeter 指标进行分析 技术点 涉及的技术点: JMeter 结果分析 回答 性能指标由 压测结果指标 和 服务器指标 两部分说明。 压测结果指标 主要是根据JMeter生成的压测报告而言,则需要关注:吞吐量、请求的响应时间以及请求的错误率。 吞吐量 每秒钟系统能够处理的请求数。 在系统压测过程中,会达到系统的一个最高值,此时如果继续加压,对应系统的吞吐量不会增高反而会下降。因为,虽然并发数在增加,但是系统已经超负荷工作,无法满足新的并发需求。 请求的响应时间 服务处理一个请求并获取它响应的时间。 获取请求的响应时间,应从请求的平均值、90%请求、99%请求等多个角度统计,而不仅仅是根据平均值来进行判断。 请求的错误率 压测并发脚本中出错的请求所占比例。 请求对错误率需要看具体是外部原因还是服务本身原因导致。外部原因比如网络超时等;服务本身由于逻辑或多线程处理问题导致。 服务器指标 服务器指标主要指的是服务器相关指标,比如:CPU、内存、网络、服务器负载 等等。 在进行性能测试时,不能只关注一方面的指标,需要压测结果指标 和 服务器指标两方面结合来判断出系统的问题所在,给出最终压测结果报告。

838阅读
4赞
0评论

一、性能测试介绍 1、性能测试的价值 为研发、运维团队提供有效的容量规划能力 系统风险识别 系统瓶颈识别 性能调优指导 2、案例 2020 年 11 月 11 日,天猫双十一峰值处理订单 58.3 万笔/秒京东金融 618 战报,白条交易额 10 秒破亿若停摆 10 分钟~~~ 3、性能测试场景 负载测试:关注系统满足性能前提下能够承受的最大压力 压力测试:测试在资源特别低的情况下的系统运行情况,同时找到系统在哪里失效以及如何失效 极限测试:在过量用户下的负载测试,避免攻击或爬虫 容量测试:确定系统可处理同时在线的最大用户量,关注点为 how much,不是 how fast 4、性能测试概念/指标 并发:虚拟并发用户数/同时在线用户数 TPS:每秒处理的事务数/交易数 QPS:每秒处理的请求数/接口查询次数 注意: – 若某些业务有且仅有一个请求连接,则 TPS=QPS– 一般情况下,用 TPS 来衡量整个业务流程,用 QPS 来衡量接口查询/请求次数– 并发数=QPS*平均响应时间例如:一个接口耗时 100ms,QPS 为 1000(此处,1 个请求即 1 个接口,每秒能处理 1000 个接口请求),而每秒 1 个接口可以执行 10 次,所以并发数为 1w RT(Response Time):响应时间 HPS(Hits Per Second):每秒点击数 PV(Page View):页面访问量 Throughput:吞吐量 指标分位 – Mean 平均– P90 表示 90%的用户/请求/事务对应的指标值– P95 表示 95%的用户/请求/事务对应的指标值– P99 表示 99%的用户/请求/事务对应的指标值 5、性能测试方法论(性能压力曲线图) 其中,第一个拐点为最优并发用户数(最佳并发),第二个拐点为系统能承载的最大并发 二、常用性能压测工具 1、Apache AB(Apache HTTP Server benchmarking tool) 小巧、便捷、灵活 只能做 HTTP 压测 不能跑复杂场景 -下载:搜索 Apache AB benchmarking–>在 Apache HTTP 官网下载 2、Apache JMeter 开源 纯 JAVA 客户端 支持所有协议 插件较多 3、nGrinder jython 编写(基于 JVM 运行的 Python) 兼容 JAVA、Python 开源 下载:github 官网搜索 nGrinder 4、Locust 下载:github 官网搜索 Locust 三、常用性能监控工具 Prometheus 四、常用性能剖析工具 作用: 用于对所发现问题的排查、诊断和调试 Skywalking 五、性能测试流程与方法 1、性能测试流程 2、性能测试方法 并发模式:从客户端角度出发,模拟业务系统能同时承载的在线用户数 吞吐量模式:从服务端角度出发,更关注服务器端接受到的请求及系统的处理能力,直接设置每秒发出请求数,免去并发到 RPS 的繁琐转化 六、性能测试计划 1、需求分析与测试设计 一般情况下,根据业务、业务数据、行为日志或同类产品业务或 数据等来提取场景和指标 2、环境设计与搭建 3、测试数据准备 接口请求参数:自己构造、日志获取、上下关联 使用数据库中表的数据 若为多接口,需结合业务场景设计请求比例 4、性能指标预期设定 每秒请求数 QPS 请求响应时间(最大、最小、平均)(例如:0.2~1 秒) 错误率 机器性能,例如:CPU idle 45%、内存无剧烈抖动或飙升 压测过程中接口功能是否正常,例如:测高负载、稳定性时 5、压测工具配置及脚本编写 6、测试执行与跟踪 发压时间线 测试前环境检查 起压:根据被压情况,调节并发量到适合的情况 查看记录各项性能指标: – ngix 日志查看每秒请求数– ngix 查看错误请求– 查看机器参数:CPU idle、memory– 查看 db、cache 等数据是否写入正常– 访问接口,查看功能是否正常 霍格沃兹的测试管理班是专门面向测试与质量管理人员的一门课程,通过提升从业人员的团队管理、项目管理、绩效管理、沟通管理等方面的能力,使测试管理人员可以更好的带领团队、项目以及公司获得更快的成长。提供 1v1 私教指导,BAT 级别的测试管理大咖量身打造职业规划。

72阅读
3赞
0评论

#程序员福大大#3. 系统响应时间和作业吞吐量是衡量计算机系统性能的重要指标。对于一个持续处理业务的系统而言, (3) ,表明其性能越好。 A.响应时间越短,作业吞吐量越小 B.响应时间越短,作业吞吐量越大 C.响应时间越长,作业吞吐量越大 D.响应时间不会影响作业吞吐量

303阅读
16赞
4评论

#福大大架构师每日一题#13.以下各项中,(13)不属于性能测试。 A.用户并发测试 B.响应时间测试 C.负载测试 D.兼容性测试

541阅读
8赞
0评论

软件测试 | 压测-JMeter聚合报告包括哪些内容? 问题 在工作中,使用JMeter做过压力测试吗? 对 JMeter 聚合报告熟悉吗? 介绍一下 JMeter 聚合报告包括哪些内容? 考察点 面试官想了解: 是否用过JMeter 对JMeter组建是否熟悉 是否用过 JMeter 聚合报告 技术点 涉及的技术点: JMeter 报告组件 回答 聚合报告是在做性能压测经常会使用的一个监听器,对应该监听器中每个参数需要了解它具体代表的指标含义: 1 2690×462 27.8 KB Label 显示的是JMeter中压测脚本中请求的名称 #样本 代表的是请求数。具体数字标明这一次压测脚本运行时一共发出的请求个数。 比如,模拟10个用户,每个用户对应并发10次,则样本数为100 平均值 平均响应时间。默认情况下是单个 Request 的平均响应时间 中位数 就是 50% 并发的用户响应时间 90% 百分位 90% 用户的响应时间 最小值 最小响应时间 最大值 最大响应时间 异常% 也就是请求的错误率。计算公式为:错误请求数/请求总数 吞吐量 默认情况下表示每秒完成的请求数 接收KB/Sec 每秒从服务器端接收到的数据量 以上就是对应聚合报告中参数指标以及含义。 一般,在性能测试中需要重点关注的参数:样本请求数,平均响应时间,最小值,最大值,异常及吞吐量。

501阅读
6赞
2评论

软件测试 | 测试开发 | 如果有一个页面特别卡顿,设想一下可能的原因 问题 如果有一个页面特别卡顿,设想一下可能的原因? 考察点 面试官想了解: 是否对该场景进行过测试 是否有问题的排查思路 技术点 涉及的技术点: 软件测试问题分析思路 性能测试 回答 页面特别卡顿的原因,这个题目对应的考察点比较广泛,有前端性能问题,也有对应后端接口性能问题。 页面请求数量是否太多 首先,考虑的就是是否当前页面对应的请求数太多,导致请求返回的数据比较慢。 这时,需要从前后端分别进行分析,看下是当前页面对应的后端接口响应的时间慢,还是前端重复请求太多导致。 如果是后端某些接口响应慢导致,则需要找到对应接口,反馈给后端研发进行优化。 如果是前端有大量的重复请求,则需要反馈给前端研发,在前端页面进行适当的数据缓存,进而减少重复的请求。 页面元素太复杂 对应页面资源类标签太多,比如:页面的DOM树对应的节点是否太多太长,页面是否有太多的图像及视频资源的加载,对应页面设计的太复杂导致页面加载慢, 页面数据量过大 当前页面需要展示的数据量过大,是否需要从业务层面需要对该页面进行分页处理或业务拆解。 客观因素 有可能当前网络环境问题导致对应页面加载过慢。 内存泄漏 首先,给大家说一下什么是内存泄漏。 对应的内存泄露就是由于代码原因,某些已经不再使用的变量或代码还在占用内存,未释放掉相关内存,其实就是一种内存的浪费。 有可能前端有大量的全局变量的数据或某些代码被循环引用导致。 主线程阻塞 开启一个字线程对主线程进行监控,当主线程的运行状态超过一定的时间阈值后,则认为主线程卡顿。 总结 以上为常见的页面卡顿的原因,如果是一个具体的场景,则还需要根据具体场景来进行判断。

349阅读
1赞
0评论