性能测试需要面对的问题

性能测试中面对的问题一般分为三类:速度,可扩展性和稳定性。

速度相关的问题有:业务应用是否足够快的满足终端用户;业务收集到的数据是否得到了及时处理和利用;业务是否能够表现最新的信息(股票行情);业务是否能在响应时间期望最大值之前作出响应(否则就会给出提示:例如请求超时)

性能测试处理速度应采取的策略:

1.拿自己的速度度量与以前版本和竞争对手的业务相比较。

2.模拟实际产品的业务进行性能测试。例如在测试之前,可以使数据在数据库或文件服务器中累加,或额外的创建数据量。

3.确保当系统定期执行一些任务时(系统定时任务),我们的性能测试也可以同时进行。

4.在多种条件不同的负荷下,多种场景中测试系统速度。

5.在性能测试中验证所有正确的数据都得以显示和保存。例如用户更新信息,确认之后界面没有出现,因为事务还没有完成向数据库的写入。

可扩展性相关的问题:业务能否存储收集到的全部数据;当业务达到最大处理能力时是否有警告提示出现;系统使用量很大时业务是否是安全可靠的;业务是否能够经得起非预期的峰值负荷量。

性能测试处理可扩展性应采取的策略:

1.在不同的负荷量下进行比较测量的速度,设计接近实际需求的测试场景。

2.当发现可扩展瓶颈时,先逐渐减少负荷再重新测试,这样才能找到接近能力上限时的可靠性指标。

3.在超过系统负载上限的条件下进行性能测试,在测试过程中和测试过程后手动完成业务访问观察其实际结果。

稳定性包括可靠性,运行时间和可恢复性。稳定性相关的问题:业务长时间运行过程中是否会发生数据损毁,处理速度变慢或服务器重启;如果业务处理速度变慢了,未处理的事务系统将怎样处理;当负载分担的一条分支出现问题时,整个系统是否能够正常服务;在业务不停止的情况下能否进行升级或打补丁。

性能测试处理稳定性应采取的策略:

1.做7X24小时不间断的耐力测试,检验是否存在内存泄漏等问题。

2.针对关键性的测试场景和性能指标做压力测试。

3.在测试过程中使一个服务器下线观察剩余系统的功能,性能和数据集成情况。

4.对周期性的业务和处理过程进行系统重启前和重启后执行相同的场景,比较结果。

5.在性能场景中把错误和异常用例也包括进去。

6.在性能测试中给系统升级,打补丁,备份或者病毒更新。

你可能感兴趣的:(性能测试需要面对的问题)