首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

软件测试性能测试是什么

对于互联网应用软件,性能是其质量的一个非常重要的组成部分。作为解决软件性能问题的重要手段,软件性能测试已经广为人们所熟悉,并受到很高的关注。一般而言,软件性能测试都是在项目的后期才开展,被测试的对象通常是已经具备一定稳定性的产品。而实际上,软件性能测试应贯穿于整个软件生命周期中,和功能测试一样,软件性能测试也分为几个阶段。

软件生命周期与软件性能测试

不论哪种软件生命周期模型,需求分析、设计、编码、测试和运行维护这几个阶段都是其中的基本要素,只是在不同的软件生命周期模型中可能迭代、合并、拆分或重组这几个阶段,在此不做过多的描述。与其他几个阶段相对应,测试从软件开发过程按阶段可以划分为:单元测试、集成测试、系统测试,在其他的书上可能还能见到诸如确认测试、验收测试等名词,但是前3种测试确实是最基本的测试活动,而其他的测试活动只是在某些软件开发过程中会发生。

值得注意的是,通常在谈论单元测试、集成测试和系统测试时,其实仅仅谈论的是不同阶段的功能测试;而当讨论软件性能测试时,绝大多数的情况是,一个已经开发完毕或基本开发完毕的软件,测试人员用一种或几种软件性能测试工具,以尽量模拟真实用户行为的方式对该软件进行并发操作,收集并比较不同场景的结果,然后对软件的性能进行分析,这个活动通常发生在系统测试阶段,甚至更往后的阶段,如运行维护阶段。

一直以来,软件性能测试跟单元测试、集成测试似乎都是绝缘的。可是它们真的应该是绝缘的吗?没有任何理由可以说明软件性能测试跟单元测试、集成测试无关,除非你认为“这太难了,我不会做”。

性能测试场景

按照测试需求和测试模型设计测试场景,对被测试系统的测试,应该采取基准测试、单交易负载测试、混合负载测试的顺序来执行。这样做的好处,在单交易负载测试时就可以发现系统本身的性能缺陷,而混合测试负责测试时将重点检查各个业务相互影响导致的性能缺陷。

基准测试场景:在系统无压力时,连续执行测试脚本100次或者5分钟,获得平均交易响应时间。

单交易负载测试场景:单交易负载测试是逐一对业务模型中的典型交易进行单交易并发测试,目的是考察系统交易功能编码是否存在性能隐患。

混合压力场景:目的是考察混合典型交易的情况下系统最大承载能力,以及交易间的资源争用情况。

稳定性测试场景:按照业务模型的约定,在一定负载压力下,长时间稳定运行测试场景,查看服务器状态。

高可用性测试场景:灾备/主从切换可恢复性场景、集群可恢复场景、同城/异地双活可恢复场景

其他场景:限流机制、数据库重连、熔断机制、超时机制、队列堵塞机制、加密机白名单验证

性能测试要点:

1、软件性能测试是在功能测试完成之后进行。

2、软件性能测试计划、方案一般与测试用例统一在一个文档里。

3、测试环境应尽量与用户环境保持一致。

4、软件性能测试一般使用测试工具和测试人员编制测试脚本来完成,软件性能测试的环境应单独运行尽量避免与其他软件同时使用。

5、软件性能测试的重点在于前期数据的设计与后期数据的分析。

6、软件性能测试的用例主要涉及到整个系统架构的问题,所以测试用例一旦生成,改动一般不大,所以做软件性能测试的重复使用率一般比较高。(说明:当系统中出现的某个功能点需要修改,它一般只会影响到功能测试的设计用例,而对于软件性能测试,很少影响到软件性能测试的设计用例。但是如果某个功能有较大的修改,软件性能测试也应该进行重新测试。)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230412A04AM300?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券