你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

这篇具有很好参考价值的文章主要介绍了你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

产品需求

业务场景:
一个问卷调查的功能,然后产品和业务会不定时通过前端界面去根据筛选条件查询相关问卷问题的答案明细,但是觉得很慢,让测试这边给出一个指标。

系统架构:
MySQL数据库,所有问卷问题相关的数据都存储在同一张表,单台服务器,无缓存,通过一个查询接口去查询返回数据。

数据量:
每天大概新增3000张问卷调查,每张问卷30个问题,每个问题下面还有具体的答案,答案的数据类型、大小不清楚。

PS:从我个人的了解来看,对大部分测试人员来说,遇到的性能需求大体都是这种范围不明确,指标不清楚的性能需求,那么如何做好测试工作,在体现自己价值的同时,还能学习提升呢?

具体问题具体分析

场景建模:
和产品业务沟通,明确他们的操作场景,比如查询的条件(时间范围、问卷类型、分数范围、用户类型等),操作时间(具体到每天哪个时间段有多少人进行这些操作)。

确定指标:
明确了业务场景后,确认不同的操作下,用户(这里是产品和业务人员)的可接受值(比如每天早晨9:00-9:10,100个人进行查询操作,查询条件是最近一周A类型用户的B类型问卷,分数在80分以上),

可接受的最大响应时间不超过5S。

测试进行中

确认测试范围和具体的性能指标后,接下来就需要进行测试方案设计、测试用例设计等一系列的计划了,这个阶段是最耗费时间也是最麻烦的。

1、环境确认
首先需要确认测试的执行环境,是生产、UAT还是独立的测试环境。测试环境对测试结果的影响是很大的,大体如下:

生产:在执行测试的过程不能对其他用户访问造成影响(时间选择很重要),测试数据污染要解决(数据隔离:线程标记、用户白名单、挡板、mock对象、测试数据落入影子库);

UAT:作为验收环境,一般来说数据的准确性和系统版本都是最新和相对稳定的,但要考虑对其他业务的影响,理由同上;

测试:数据预埋、基础数据准备、测试数据准备、每次执行迭代后的数据初始化、服务器配置和生产是否可以等量代换等;

2、团队合作
性能测试不是一个人就可以搞定的,一般都需要运维、DBA、开发、测试配合来进行,因此做好沟通和协作很重要。

3、测试要做什么
上面的工作做完之后,你需要考虑测试执行工具和脚本开发的工作。

需要做的事情如下:
①、和开发沟通,获取业务功能对应的接口文档(如果没有,想办法),参数字段的含义,对应的数据库表字段,造成的影响;
②、和运维沟通,确确认服务器的部署,配置(这里可能需要进行基准测试和配置测试);
③、和DBA沟通,确认测试数据预埋、基础数据准备、迭代后的数据初始化工作;
④、测试人员本身,需要准备测试数据,开发测试脚本,进行脚本调试,执行和监控分析等工作;

如何在性能测试中体现测试的价值?

我相信很多测试朋友都经历过那种不被看中的阶段,但也要努力去改变现状,不断体现自己的价值。

如何体现,请看下面:
1、做好沟通协调
①、和业务产品沟通,确认需求和场景;
②、和技术团队沟通,尽量多沟通,达成一致(测试方案、测试用例、测试数据、测试环境);

2、本职工作要做好
①、测试方案、测试用例设计;
②、测试工具选型、测试脚本开发和调试;
③、测试数据的准备;
④、测试执行、监控和分析定位;

3、创造价值才能赢得尊重
职场,一切到头来还要从自身创造的价值来赢得尊重,那么如何从测试的角度创造价值?

①、提高交付的产品质量(覆盖率、风险分析、容错方案、容灾方案);
②、提高交付速率(解决问题的过程抛出问题,流程不规范、开发不规范、管理不规范等,抛出问题,然后推动解决问题)
③、打铁也要自身硬!因此不断学习提高自己的技术能力,不断总结沟通,才能更好和同事交流,从解决问题的角度出发,去解决问题,创造价值!

性能需求的一些优化建议

数据库优化:
问题点:从上面描述的情况来看,每天产生的数据大概有10W+条,且只有一张表存储;

解决方案:分库分表,表可以拆分为问卷主表、问卷对应的问题表、问题对应的答案明细表等,长期来说数据量不小,可以考虑分库,主从分离等,查询添加索引等方法。

处理逻辑优化:
问题点:一次性查询的数据过多,导致前端展示较慢;

解决方案:查询结果分批次展示(比如有100W条数据,分为100个批次,每个批次10000条数据)。

存储优化:
问题点:没有缓存,直接从DB单表读取,容易造成超时和表锁;

解决方案:将数据放入缓存服务器(比如Redis),设定查询次数或者有效时间,多级缓存,提高缓存命中,防止缓存穿透和同时失效带来的瞬间DB压力。

业务优化:
问题点:多人短时间内查询大量数据,对服务造成巨大压力;

解决方案:和产品业务沟通,让查询操作时间在业务平缓期,拉长查询操作的时间线等。

服务优化:
问题点:单台服务器;

解决方案:做服务集群和负载均衡,增加监控,设定阈值,超过阈值则临时增加新的服务器,分流。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

二、接口自动化项目实战

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

三、Web自动化项目实战

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

四、App自动化项目实战

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

五、一线大厂简历

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

六、测试开发DevOps体系

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

七、常用自动化测试工具

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

八、JMeter性能测试

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

九、总结(尾部小惊喜)

生命是一场马拉松,成功需要不断的奔跑和坚持。别让平庸成为你的选择,拥抱挑战并享受过程中的成长与收获。相信自己,勇敢前行,未来的路会更加美好!

每个人都有不同的起点,但只要你肯付出努力,就能到达成功的终点。不要被眼前的挫折打倒,相信自己的实力,坚持奋斗,未来必将充满可能和无限可能!

不要害怕失败,因为每次失败都是迈向成功的一步。只有敢于尝试和不断努力,才能创造出更好的自己。坚持奋斗,迎接挑战,成功将属于你!文章来源地址https://www.toymoban.com/news/detail-496855.html

到了这里,关于你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序开发---购物商城系统。【详细业务需求描述+实现效果】

    视频演示 以下演示为手机真机录屏 微信小程序商品系统功能演示       该微信商城系统实现的主要如下图所示 3.1 首页        首页基本构成:1、顶部搜索页;2、轮播图(点击轮播图可跳转);3、导航栏分类(点击可跳转)。4、商品分类图集(点击页面可跳转);

    2024年02月11日
    浏览(31)
  • 数据库性能测试实践:慢查询统计分析

    查看是否开启慢查询 mysql show variables like \\\'%slow%’; 如图所示: 系统变量log_slow_admin_statements 表示是否将慢管理语句例如ANALYZE TABLE和ALTER TABLE等记入慢查询日志 启用log_slow_extra系统变量 (从MySQL 8.0.14开始提供)将导致服务器将几个额外字段写入日志 Log_slow_slave_statements 从库默认

    2024年02月07日
    浏览(43)
  • 银行测试:第三方支付平台业务流,功能/性能/安全测试方法

    在信用方面,第三方支付平台作为中介,在网上交易的商家和消费者之间作一个信用的中转,通过改造支付流程来约束双方的行为,从而在一定程度上缓解彼此对双方信用的猜疑,增加对网上购物的可信度。 在技术层面,第三方支付平台承担安全保障和技术支持的作用,提供

    2024年02月04日
    浏览(34)
  • 测试需求分析

    灰度测试: 先发布部分功能,然后看用户的反馈,再去发布另外一部分的更新 A/B测试 :先发布的功能先让A部分的用户进行更新,再根据用户的犯困再更新B用户的功能 需求测试: 功能需求:业务流程——优先考虑 非功能需求:界面、文档、兼容性、易用性、性能、安全性

    2024年02月09日
    浏览(31)
  • 软件测试需求分析

    1.1、必要性 如果把测试活动比作软件生命周期,测试需求分析就相当于软件的需求规格说明,测试策略相当于软件的架构设计,测试用例相当于软件的详细设计,测试执行相当于软件的编码过程。所以整个测试活动的依据来源于测试需求,测试需求分析是整个测试活动环节必

    2023年04月26日
    浏览(38)
  • 性能测试指标之业务指标和技术指标如何进行区别

    通过业务指标 转化我们的技术指标,用户  第三方客户, 公司内部产品经理 产品经理  会提出产品业务指标,需要对业务指标进行挖掘,提出测试场景 业务指标会转化成相对应的技术指标 时间指标 平均响应时间  最大响应时间  最小的响应时间 每一秒钟处理的事务数 T

    2023年04月18日
    浏览(41)
  • 软件测试需求分析的常用方法

            软件测试需求分析时,应要求产品人员对需求进行讲解,并使用相对应的方法进行科学分析,否则无法保障软件测试的完整性和科学性,从而造成在项目中后期Bug频出、风险增大等问题。         而常用的测试需求分析的方法:          1、功能分解方法

    2024年02月14日
    浏览(24)
  • 高效的敏捷测试第九课 ATDD、需求分析、需求评审和设计评审

    第20讲:没有 ATDD,就没有用户故事的可测试性 从这一讲开始,我们就进入了第 4 部分的学习: 测试左移更体现敏捷测试的价值 。因为敏捷更提倡团队对质量负责、预防缺陷胜于发现缺陷,这两点就意味着我们要构建出高质量的产品,把质量构建推向源头——需求,把测试活

    2023年04月23日
    浏览(74)
  • 【业务功能篇86】微服务-springcloud-系统性能压力测试-jmeter-性能优化-JVM参数调优

      压力测试是给软件不断加压,强制其在极限的情况下运行,观察它可以运行到何种程度,从而发现性能缺陷,是通过搭建与实际环境相似的测试环境,通过测试程序在同一时间内或某一段时间内,向系统发送预期数量的交易请求、测试系统在不同压力情况下的效率状况,

    2024年02月10日
    浏览(42)
  • 软件测试/测试开发丨使用ChatGPT自动进行需求分析

    在实际工作过程中,常常需要拿到产品的PRD文档或者原型图进行需求分析,为产品的功能设计和优化提供建议。 而使用ChatGPT可以很好地帮助分析和整理用户需求。 接下来,需要使用ChatGPT 辅助我们完成需求分析的任务 注意:为了方便展示,所有GPT的回复都将使用文本格式展

    2024年02月09日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包