测试如何理解性能测试、负载测试、稳定性测试、压力测试

admin2022-11-08 16:51:2826
如何理解性能测试、负载测试、稳定性测试、压力测试?

广义上性能测试指的是以下几种性能测试类型:性能测试负载测试压力测试稳定性测试

一般 *** 的性能指标

响应时间( *** 为其服务所耗费的时间)。吞吐量(简单讲就是 *** 在每单位时间内能处理多少个事务/请求/单位数据等)。资源使用率(常见的资源有:CPU占用率、内存使用率、磁盘I/O、 *** I/O)。点击数(单位时间内, *** 响应客户的请求,是 *** 处理能力的一个很有用的指标)。并发用户数(并发用户数用来度量服务器并发容量和同步协调能力)。

我们取其中某几个性能指标,举个栗子。我们先假设一个场景:XX查询 *** ,其中一项产品规格(性能指标)为300用户并发查询,页面首屏结果请求响应时间不超过3秒。

随着被测 *** 的负载不断增大, *** TPS变化趋势图,如上图中 A/B/C/D四点表示:

A:产品规格(性能指标)

B :高于性能指标,接近 *** 资源临界点

C :高于性能指标,达到更大,出现性能拐点(可理解为更大并发用户数)

D :远高于性能指标, *** 崩溃

性能测试

测试A点的 *** 性能。

性能测试是为了获得 *** 在某种特定的条件下(包括特定的负载条件下)的性能指标数据。

负载测试

测试 A点以下到C点 *** 性能。

负载测试的目标是测试在一定负载情况下 *** 性能(不关注稳定性,也就是说不关注长时间运行),实际中我们常从比较小的负载开始,逐渐增加模拟用户的数量(增加负载), 观察不同负载下应用程序响应时间、数据吞吐量、 *** 资源使用率(如CPU、内存)等,直到到 *** 的某项或多项性能指标达到安全临界值(如, *** 内存已饱和),以发现 *** 可能存在的性能瓶预、内存泄漏、不能实时同步等问题(不关注稳定性,也就是说不关注长时间运行。它是测试 *** 的不同负载情况下的性能指标。

稳定性测试

测试 A点以下 到 B 点之间

稳定性测试是一般在低于性能值的前提下进行测试的,一般稳定性测试时间持续为 n*24 小时。测试时,我们需要结合用户实际情况控制测试中的负载量 ,使测试结果更具准确性和可靠性。

压力测试

测试B 点到D 点之间 *** 性能。

压力测试是在高于性能指标负载的前提下(超负载)对 *** 持续施加压力进行测试的,查看应用 *** 在峰值使用情况下 *** 作行为,从而有效地发现 *** 的某项功能隐惠、 *** 是否具有良好的容错能力和可恢复能力。压力测试分为高负载下的长时间(如124小时以上)的稳定性压力测试和极限负载情况下导致 *** 崩溃的 *** 性压力测试。

稳定性压力测试:在选定的压力值下,长时间持续运行。通过这类压力测试,可以考察各项性能指标是否在指定范围内,有无内存泄漏、有无功能性故障。 *** 性压力测试:在稳定性压力测试中可能会出现些问题 ,如 *** 性能明显降低,但很难察露出其真实的原因。通过 *** 性不断加压的手段(极限负载情况下导致 *** 崩溃),往往能快速造成 *** 的崩溃。

压力测试的几点注意

测试时,我们需要注意并不是负载超过了 *** 的更大处理能力, *** 功能都会失效。例如,OA签到最多支持500用户井发登录,但某时550用户同时进行登录时, *** 应保证550个用户中,500用户是可以正常登录,而不是所有用户都无法登录。用户的业务负载并不是平均的,可能在极短时间内,出现超过负载的情况,如某宝 *** 一。因此不建议用持续超过 *** 负载的测试 *** 进行压力测试,只要负载足够多, *** 总会被搞挂,建议使用突发形态的负载模型。

有些程序员说35岁职业危机,那么为什么做开发的35岁程序员不转做测试呢?

您好,很高兴回答您的问题!

本人作为资深开发工程师,谈谈对这个问题的看法。

软件开发工程师,俗称程序员、码龙等,这个职业在中国既是技术活,也是体力活,更是青春活。35岁职业危机这个梗,起源于华为35岁淘汰员工的说法,35岁的开发工程师,也就意味着在开发工作上近乎10-15年工作经验,技能水平上已经是比较高水准了,按理来说应该会受欢迎才对,但结果并非如此。

其一:5年工作经验的人也能胜任该岗位,为什么要花更大代价请10年以上的工程师?

在公司角度上可以不在乎年龄多大,只要是性价比高、能在规定时间,保质保量完成开发任务就行,但是10年以上的工作经验的人愿意拿着5年工作经验的工资,跟小屁孩们一起加班加点吗?

其二:35岁的人,精力上能比得上年轻人吗?

在国内软件开发人员,加班加点是常有的事情,996也不是什么稀罕事!35岁已经一家支柱,精力不会像年轻人一样,把更多精力放在工作上。

以上解释了35岁这个坎,下面我解释一下为什么不转做测试。

测试如何理解性能测试、负载测试、稳定性测试、压力测试

其一:职业上,一般测试人员的工作技能要求比软件开发人眼的要求要低,但是测试也是一个很花精力的活,在软件生产过程中,测试验收是开发阶段的收尾部分,一般公司,项目延期后,疯狂压缩项目后阶段时间,导致测试任务非常紧急繁重,加班加点成了常见现象。

其二:一般情况下测试的工资要比开发的低,俗话说由俭入奢易,由奢入俭难,试想一下,上个月工资还是5W+,换成测试工作后这个月工资仅仅1W,这个落差不是一般人能接受的,况且,测试工资能否满足家庭开支,这个也是换工作需要重点考虑的。

以上,感谢您的阅读。

测试如何理解性能测试、负载测试、稳定性测试、压力测试

软件测试是做什么的?这个行业怎么样?

主要来说该职位日常工作主要有:需求分析,编写测试用例,用例评审,执行用例,记录bug,与开发人员协调,中级,高级测试工程师要求一般的技能得会接口测试,自动化测试,性能测试,换句话来说,软件测试是为了让产品质量有一定的保障,避免部分问题造成损失

网友评论