1、执行策略
针对抽取出的性能测试点,在测试执行上通常会采取先进行单场景测试,然后组合场景测试,最后为整个产品建立测试模型,
进行整体性能评估。也可设置benchark基准点,持续跟进产品基准变化趋势,预示产品风险。
2、什么是场景?
有必要先介绍下场景的概念,场景是应用运行时的一个剖面,一般来说,一个场景可以被表述如下:
X%的用户在操作A业务,y%的用户在操作B业务,Z%的用户在操作C业务。
场景不同就意味着系统在被以不同的方式使用,在不同的场景下,很可能系统的性能表现就会不同。
3、单场景测试
针对单个性能测试点,构建一个性能测试场景进行一系列性能测试过程,包括性能、负载、压力和稳定性测试,
提早发现单场景情况下隐藏的性能问题或存在的性能瓶颈,及早解决,防止在混合场景下无法暴漏出的某些问题。
案例:分布式文件系统SDFS产品典型业务包括:文件上传、文件下载、又细分为上传大文件、上传小文件、下载大文件、下载小文件。
要针对每个测试点进行单场景测试,准备相应的测试数据,测试策略,通常进行负载、压力测试等。
4、组合场景测试
为了更真实的模拟实际应用场景,将单场景按一定的原则进行组合,模拟某一类用户的典型业务行动形成组合场景进行测试,通常进行负载、稳定性测试等。
案例:模拟10%用户进行大文件上传,90%用户进行小文件上传进行组合测试。
5、测试模型
为被测系统建立测试模型,目的是为了更接近真实的来模拟线上实际情况,通常会基于线上统计数据进行分析来建立业务模型。
案例:根据分布式文件系统线上统计数据,每天的文件上传量和下载量,得出以下测试模型;
20%的用户进行文件上传,其中10%的用户进行大文件(大文件分布区间)上传,90%用户进行小文件(小文件分布区间)上传。
80%用户进行文件下载(测试数据复制使用线上真实数据)。
这样一个测试模型与线上的业务模型会更接近,测试数据也会相对有效。
6、Benchark基准
基准测试是一种测试类型,不是一种测试策略,但是在制定测试方案时要考虑基准测试。会使得测试结果更有
延续性,能评估和预示系统的迭代性能。系统经过几个版本的优化和迭代,要清晰的展示每次优化和迭代,性能
是上升了,还是下降了,如果下降了要及时预警,查找下降的原因。
7、测试类型选取
性能测试方案同时要为不同测试场景选取性能测试类型,常用性能测试类型包括:负载测试、压力测试和稳定性测试。
常用性能测试类型包括:容量测试、数据量测试、配置测试、峰谷测等。