什么是压力测试,在哪里做压力测试,软件压力测试存在哪些问题?

发布时间 2023-08-14 09:16:10作者: 软件第三方测试波阿哥
软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分。软件压力测试的基本思路很简单: 不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试。 通常要进行软件压力测试的资源包括内部内存、CPU 可用性、磁盘空间和网络带宽。压力测试涵盖,性能测试,负载测试并发测试等等,这些测试点常常交织耦合在一起。
压力测试
1、什么是压力测试?
软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分。软件压力测试的基本思路很简单: 不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试。 通常要进行软件压力测试的资源包括内部内存、CPU 可用性、磁盘空间和网络带宽。
压力测试涵盖,性能测试,负载测试,并发测试等等,这些测试点常常交织耦合在一起。
2、压力测试存在哪些问题?
我归纳了以下几点:
(1)操作系统默认安装,在未做任何优化的情况下实施压力测试
(2)未考虑磁盘IO对软件的影响
(3)未考虑网络带宽对软件的影响
(4)网络软件测试,没有考虑到TCP特点
(5)各种超时参数优化
(6)测试客户端未优化
3、为什么做压力测试?
如果在软件设计阶段都将这些问题元素都考虑进去,同时开发阶段严格执行。那么开发出些软件几乎不用做这个劳人伤神的压力测试。
所以在软件设计阶段就要考虑,灵活性,扩展性,可靠性与性能,还要考虑高可用与负载均衡。
同时软件优化伴随开发,持续集成,持续测试,持续部署。
4、在哪里做压力测试?
有些软件需要封闭的环境测试,不能在共享资源的环境中做测试。所以你有必要做Vlan隔离,甚至独立的路由器与交换机在封闭网络中测试。
5、什么时间做压力测试?
任何时间都可能做压力测试,为什么我将“时间”重点提出呢?目前受地球自转影响,经常闰秒,你不的不考虑这个问题。
6、压力测试过程参与人员有哪些?
运维部门
开发部门
测试部门
怎么做压力测试呢?你要活得最大化性能吗?还是相对性能?我们通常需要的是满足需求就好的相对性能,而不是最大化性能。为什么呢?因为要活得最大化性能是要做出很多配置牺牲的,例如关闭日志,禁止访问时间等等。