软件系统性能指标可以衡量一个软件系统的运行效果,有关软件系统性能指标主要包括哪些方面呢?大致包括:时间效率、空间效率、事务操作性能、IO性能、数据库性能、内存性能、初始化/退出时间、资源利用率等,这些都是软件系统性能指标的主要参考依据,下面一起来看看具体的软件系统性能指标有哪些细节吧!

软件系统性能指标主要有哪些方面?

1、事务处理时间:指软件中完成一项事物所需的运行时间。一般主要用来评价事务处理的效率,通常事务处理时间越短,则效率越高。属于时间效率的范畴。

2、最大的事务处理时间:服务器软件中,最大事务处理时间是一个很重要的性能指标,因为如果某项事务处理时间过多的话,将很容易受到DOS型的攻击。要测试最大事务处理时间需要先分析一下哪些事务耗时比较多,然后再将这些事务所花费的时间分别测试出来,花费时间最多的就是最大的事务处理时间。

3、事务操作时间:主要用来评价需要用户进行操作的事务处理需要花费的时间,主要体现了用户操作方面的效率。测试事务操作时间时,需要一个好的计时器(如秒表之类的东西),需要多测试几次,最好测试多个不同的人花费的时间,最后取平均值即可。

4、IO性能:本文指物理磁盘的IO性能,衡量IO性能的主要指标是单位时间内的读写数据数量,比如磁盘每秒钟读取的数据字节数、每秒写入的数据字节数。硬盘发展速度没有赶上CPU的发展速度,所以,如果一个软件需要操作磁盘的话,最好测试一下IO方面的性能。

程序的实现对IO性能也有很大影响,比如写一个文件,多次写入小块数据就不如一次写入一大块数据高效。当然IO不局限于磁盘IO,网络IO和其他硬件设备IO都属于IO的范畴,如果程序使用了某个IO的通道,那么就需要做一下这方面的IO性能测试。IO测试可以在白盒测试时设计专门的测试用例进行测试,也可以在黑盒测试时做,黑盒测试由于操作上要花时间,存在误差,所以不如白盒测试准确。

5、数据库性能:一般包括查询、插入、删除、更新数据库数据等所花费的时间。需要使用数据库的软件中,数据库性能往往容易成为软件中的性能瓶颈。提高数据库性能能通常通过规范数据表以减少相互依赖或者通过增加数据库服务器的数量来解决,数据库性能测试也可以采用百合测试的方法来进行。

6、空间利用率:是指有效数据占用的空间和整个是用的空间的比例。比如,定义了一个字符数组大小为1024字节,但是程序中只拷贝了一个“Hello!”字符串到数组里,那么有效数据占用的内存为7字节,而实际使用的内存空间却有1024字节。在这种情况下空间利用率就是7/1024。

空间利用率可以用以下公式来计算:空间利用率=实际使用的空间/占用的总空间

测试空间利用率比较困难,一般只能在白盒测试时有针对性地编写专用的测试代码进行统计。比如内存管理中,可以使用HOOK技术来记录总共分配了多少块内存,再将每块内存的实际使用大小保存起来,在计算每块内存的分配尺寸,最后根据上述公式计算实际使用的大小总数和分配大小的总数就可以得出空间利用率。

7、最大消耗的内存量:指软件在运行过程中需要消耗的最大内存数量(单位:kb),这个指标标示着应该配置什么级别的硬件才能运行软件,是硬件成本的直接反映。

要测试最大消耗的内存量,可以通过性能监视器来进行,不过最好的方法是自己编写一个内存监测工具,先让工具记录下初始系统剩余内存大小,然后运行软件,通过监测工具自动记录系统剩余内存大小,由工具计算出整个系统过程中系统最小的剩余内存,用把初始系统剩余内存减去最小的系统剩余内存就得到了最大的内存消耗量。

8、高峰内存时间:是指软件在高峰内存消耗时期所运行的时间。如果软件在高峰期使用的内存和系统的总内存比较接近的话,软件的效率将会大大降低。作者在《多任务下的数据结构与算法》一书中讲述了动态等尺寸内存管理算法,当到了内存使用高峰期后,如果释放掉很多使用过的内存,占用系统的内存也会跟着释放一部分,对于缩减软件的高峰内存时间有很好的帮助。

9、初始化/退出时间:初始化时间是指软件初始化所花费的时间,比如,对于客户端软件,就是在从运行开始直到用户可以操作的时间。服务器软件是指从运行开始到服务器可以开始处理客户端的服务请求的时间。

退出时间包括软件正常结束情况下的退出和非正常结束情况下的退出所花费的时间。衡量退出性能主要有两个指标,一个事能不能在任何情况下退出,另一个是退出花费的时间是多少。不论在正常结束还是非正常结束的情况下,软件都应该以较快的速度退出。现在软件一般都采用多任务架构的,当有任务在运行时,需要等待正在操作的任务结束后才能退出。在《多任务下的数据结构与算法》一书中讲述了一个多任务下的退出算法,采用此算法可以让软件很快退出而不需要等待很长的时间。

10、CPU 利用率:CPU利用率属于资源利用率的一种,对于单核CPU系统来说:CPU利用率=总时间-CPU空闲时间/程序运行总时间

对于多核或多CPU机器来说,要分别统计每个CPU的利用率,再计算平均值。在Windows操作系统上可以通过性能监视器来观察每一个CPU的利用率曲线。

CPU利用率对不同的软件意义不同,在分时系统中,客户端软件一般要求CPU利用率不能太高,必须留一些CPU给其他应用程序使用。而在服务器软件中,一般要求CPU利用率要高一些,否则会造成其他硬件资源浪费。

软件性能测试包括哪些方面,简述软件系统性能指标主要包括哪些方面相关推荐

  1. 软件测试的性能指标从哪获取,软件性能测试指标有哪些?做性能测试前注意事项...

    软件测试人员一般通过性能测试工具监控收集到性能指标.下面小编再来总结一下,性能测试监控指标分为:资源指标和系统指标,一起来看看吧! 一.资源指标分析 1.CPU使用率 2.内存利用率 3.磁盘I/O ...

  2. 浅谈软件性能测试中关键指标的监控与分析(转)

    浅谈软件性能测试中关键指标的监控与分析 一.软件性能测试需要监控哪些关键指标? 软件性能测试的目的主要有以下三点: Ø  评价系统当前性能,判断系统是否满足预期的性能需求. Ø  寻找软件系统可能存在 ...

  3. 软件性能测试方案怎么编写?权威的性能测试报告如何申请?

    软件性能测试是通过自动化的测试工具模拟多种正常.峰值以及异常负载条件来对系统的各项性能指标进行测试.性能测试在软件的质量保证中起着重要的作用,它包括的测试内容丰富多样.负载测试和压力测试都属于性能测试 ...

  4. 软件性能测试方案怎么编写?

    一.软件性能测试方案是什么? 软件性能测试方案是针对软件产品开展性能检测工作,形成的总结性报告方案,是测试工作中重要的一部分,也是一种基本的质量保证行为.软件性能测试工作的重点是对应用系统或者软件模拟 ...

  5. 什么是软件性能测试?你真的了解性能测试吗?

    前言 小伙伴们,我在刷一些问题的时候发现很多人都在问性能测试,所以我今天就想和大家来聊聊性能测试,废话就不多说了咱们直接进入正题吧. 一.什么是软件性能?什么是软件性能测试? 定义:软件的性能是软件的 ...

  6. 软件测试的性能测试包括什么?

    性能测试包括什么? ⼀.什么是软件性能?什么是软件性能测试?⼆.不同群体关注的软件性能三.性能测试的类型 ⼀.什么是软件性能?什么是软件性能测试? 定义:软件的性能是软件的⼀种⾮功能特性,它关注的不是 ...

  7. 什么是软件性能测试?常见的测试指标和工具有哪些?

    一.什么是软件性能测试 软件性能测试是在交替进行负荷和强迫测试时常用的术语.理想的"软件性能测试"(和其他类型的测试)应在需求文档或质量保证.测试计划中定义.软件性能测试一般包括负 ...

  8. 浅谈软件性能测试,浅谈软件性能自动测试应用

    摘要:软件性能是软件测试工作中的重要一环,首先要正确理解软件性能测试,要从不同的角度去理解:其次要熟悉几种软件性能测试方法,LoadRunner性能测试和Segue性能测试以及PTGM模型是较好的测试 ...

  9. 《精通软件性能测试与LoadRunner最佳实战》—第2章2.节

    内 容 提 要 精通软件性能测试与LoadRunner最佳实战 本书在介绍软件性能测试概念的基础上,结合对实际测试案例的剖析,重点讲解了性能测试实战技术.LoadRunner工具的使用技巧和实践工作中 ...

  10. 软件性能测试重要性,软件性能测试的重要性及策略(2)

    试属于系统级测试 从V型图可以看到,性能测试属于系统级测试.那么性能测试是基于单元测试.集成测试.功能测试等都已经完成的基础上,站在用户的角度去测试整个系统的.这包含两个含义: 第一,性能测试是&qu ...

最新文章

  1. 桥牌笔记:当其它希望不存在时,才进行飞张
  2. js添加多个子节点_JS创建DOM节点-使用document.createElement()创建子节点或同级节点...
  3. spring-session使用教程(一):redis共享session
  4. C++单链表的建立和遍历
  5. 控制台添加log4net
  6. 关于Keras在测试不能使用正则dropout的解决
  7. Android之ExpandableListView
  8. IOS – OpenGL ES 调节图像色彩替换 GPUImageFalseColorFilter
  9. c语言字符串输出瘕b,c语言课件10tt函数(1)幻灯片资料(51页)-原创力文档
  10. 161011、oracle批量插入数据
  11. 神秘黑客攻陷密码管理器 Passwordstate 部署恶意软件,发动软件供应链攻击
  12. 为什么我会反对大家写工作日报
  13. centos使用迅雷远程下载
  14. Python搭建QQ机器人,监控QQ发言与进群退群,自动@新成员并屏蔽脏话踢人
  15. 网页游戏运营模式研究
  16. 模型编辑之BIM轻量化
  17. iOS开发者账号最新续费流程
  18. linux wifi设置端口号,Linux 下wifi 驱动开发(四)—— USB接口WiFi驱动浅析
  19. 企业与个人是如何跨越战略转折点 - 读《只有偏执狂才能生存》
  20. gts250 linux驱动下载,下载:NVIDIA显卡Linux驱动190.32测试版

热门文章

  1. 孙子兵法始计篇读后感&心得(下)
  2. 百度定位获取当前信息
  3. 云知声打磨四年的AI芯片出炉,中国造芯势力群起
  4. SpringBoot发送电子邮件(附源码)
  5. 3.giant component(netlogo)
  6. 【金融财经】金融市场一周简报(2017-09-08)
  7. 2021最新C++面试题(附答案)
  8. 兜兜转转还是回到程序员圈子
  9. 【Leetcode刷题篇】leetcode437 路径总和III
  10. Chromium 文件下载