性能测试的误区

作者: WinterM9 | 来源:发表于2017-06-02 18:13 被阅读0次

误区1:应用程序必须通过功能性测试后才可以测试性能

应该尽早的进行性能测试。性能测试可以发生在各个测试阶段中,即使是在单元层,一个单独模块的性能也可以使用白盒测试来进行评估,然而,只有当整个系统的所有成分都集成到一起后,才能检查一个系统的真正性能

性能测试从早开始,完成一个小模块,对小模块的接口进行性能测试,一般耗费资源很少,但可以防止问题在项目最后出现,花费很大的精力去修改

而有些资料中提到的:在系统代码开发和功能测试完成之后,进行性能测试的说法,是为了检查系统整体性能的做法。一般经常出现在验收性能测试中

误区2:性能测试要向功能测试一样,覆盖到所有功能

性能测试的主要目的是为了系统调优。不可能对所有的系统功能都进行性能测试。

在测试设计时需要结合当时的实际系统,先分析软件可能存在的瓶颈,此时可依据80/20原则分析:对系统资源的利用、数据大量传输、数据转换、用户使用频率、逻辑复杂度等进行分析,选择要执行的功能和场景,再依次制定性能测试的方案

误区3:系统吞吐率随着并发量增加而增加

随着并发量的增加吞吐率并不是线性增长的。并发量从小逐渐增大,开始阶段吞吐率随着并发量的增加线性变化

当并发量达到某一值时,系统处理能力趋于饱和(也可能某一硬件条件达到临界值),此时再逐渐增大并发,会有一些请求处于等待状态,所以响应时间变慢,吞吐率趋于稳定

当并发量达到系统的最大处理能力后,再增加并发,系统处理能力会下降,吞吐率也会下降,最终可能发生宕机

误区4:客户给出性能指标,我们一定要想法设法达到

根据用户提供的指标进行可行性分析,分析这些指标在理想状态下是否可以达到

比如有这么一个要求:有一台服务器,希望能承载10000个用户每秒200kb的传输。从CPU、Disk、网卡等方面分析都是很难达到的,也是很难测试的。需要和客户商讨增加硬件配置或者通过其他途径来解决

误区5:压力测试、负载测试、容量测试等这些不同类型的测试一个一个分开来执行

现实场景是复杂的,测试也需要尽可能的模拟负载的场景。在一个整体的系统性能测试场景中,应该包括各个类型的测试。而需要检查某一个方面的指标或分析某个性能问题时,尽量保证场景简单、单一、容易模拟

误区6:做性能测试主要就是性能测试工具的使用;做不好性能测试,是因为对测试工具不熟悉;测试工具可以自动生成我所需要的报表;依靠性能测试工具就能准确定位系统瓶颈

测试工具在测试中只能起到辅助性作用

而测试方案、测试场景的分析、问题的定位这才是性能测试的关键。不要期望测试工具能够生成你想要的东西(报表、瓶颈分析),工具只是尽可能多的提供我们分析的依据

误区7:在线用户数就是并发用户数。并发用户数高意味着PV(页面浏览量)大

并发用户数 * 用户访问页面数 = PV

误区8:提高一下硬件配置就可以提高性能了,因此性能测试不重要

随着软件规模的扩大,提高硬件配置只是解决性能问题的一个基本手段

因为如果软件自身存在性能问题,再多的资源可能也不够用,例如:内存泄露问题,随着时间的增加,内存终究会被耗尽,最后导致系统崩溃;数据库连接等配置信息、数据库死锁是和硬件很难挂钩的;算法逻辑问题导致程序缓慢

即使要提高配置,也要首先用性能测试的方式得出哪些硬件可能存在瓶颈

误区9:性能测试独立于功能测试

一方面,整体性能测试的场景设计要求的系统功能非常熟悉

另一方面,功能测试可以发现性能问题,性能测试也能发现功能问题

很多性能问题是由于软件自身功能缺陷引起的,如果应用系统功能不完善或者代码运行效率低下,通常会带来一些性能问题

功能测试则可能会发现这些问题

误区10:随便找个环境下进行一下性能测试就可以了

做性能问题分析可以在类生产环境上进行,配置可以有些差别,但是,整体性性能测试、验收性能测试要尽量在用户生产环境下进行

相关文章

  • 性能测试的误区

    误区1:应用程序必须通过功能性测试后才可以测试性能 应该尽早的进行性能测试。性能测试可以发生在各个测试阶段中,即使...

  • 性能测试的误区

    最近运气好到爆,平均一个月一次感冒不说,看的书也越来越不错。 最近在恶补高性能mysql一书,以小白姿势强烈推荐!...

  • 软件性能测试目录

    软件性能测试Ⅰ 软件性能测试Ⅱ 软件性能测试Ⅲ 软件性能测试Ⅳ 软件性能测试Ⅴ 软件性能测试Ⅵ 软件性能测试Ⅶ 软...

  • 性能测试概览目录

    性能测试概览Ⅰ 性能测试概览Ⅱ 性能测试概览Ⅲ 性能测试概览Ⅳ

  • 玩转电商应用性能调优

    第1章 入门篇—性能测试基础知识 什么性能测试 性能测试类型 性能测试基本流程 性能测试需求分析 性能测试指标

  • 性能测试概览Ⅳ

    五类性能测试用例 ●预期指标的性能测试 ●并发用户的性能测试 ●疲劳强度和大数据量的性能测试 ●服务器性能测试 ●...

  • 性能测试基础

    一.性能测试概况 性能测试是一个总称,具体可细分为性能测试、负载测试、压力测试、稳定性测试 性能测试: 以系统设计...

  • 测试类型划分

    功能测试 性能测试 性能测试主要包含以下方面: 性能测试指标 性能测试常用工具 安全测试 安全测试常用工具 安全测...

  • 性能测试常用的测试方法

    性能测试可分为七大类 如下: 第一、后端测试 后端性能测试,也就是服务器端性能测试。 后端性能测试,是通过性能测试...

  • 浅谈我所理解的性能测试~待更新

    1.什么是性能测试 1.1性能测试的定义: 1.2性能测试的类型: 1.3性能测试应用场景 2.什么时候需要性能测...

网友评论

    本文标题:性能测试的误区

    本文链接:https://www.haomeiwen.com/subject/bebufxtx.html