WEB性能测试种类
压力测试:确定一个系统的瓶颈或者不能接收用户请求的性能点,来获得系统能提供的最大服务级别的测试。
负载测试:在被测系统上不断增加压力 ,直到性能指标达到极限,响应时间超过预定指标或者某种资源已经达到饱和状态。这种测试可以找到系统的处理极限,为系统调优提供依据。
大数据量测试:针对某些系统存储、传输、统计查询等业务进行大数据量的测试。
配置测试:通过测试找到系统各资源的最优分配原则。
可靠性测试:可以施加cpu资源保持70%-90%使用率的压力,连续对系统加压运行8小时,然后根据结果分析系统是否稳定。即加载一定压力的情况下,使系统运行一段时间。
并发测试:多以发现一些算法设计上的问题。
性能测试以用户并发测试为主的测试。
性能测试主要是为了发现软件问题和硬件瓶颈。
对于性能方面给系统留有30%左右的扩展空间即可。
Web全面性能测试模型
预期指标的性能测试
主要指需求分析和设计阶段提出的一些性能指标。
针对每个指标都要编写一个或者多个测试用例来验证系统是否达到要求。
预期指标的性能测试用例通常以单用户为主,如果涉及并发用户内容,则归并到并发用户测试用例中进行设计。
并发性能测试
选择具有代表性、关键的业务来设计用例,并且用户的设计应该面向“模块”
用户并发性能测试分为:独立核心模块并发性能测试,组合模块并发性能测试
独立核心模块并发:完全一样功能的并发测试;完全一样操作的并发测试;相同/不同的子功能并发。
针对独立核心模块用户并发性能的测试用例设计,可发现一些核心算法或者功能方面的问题,如一些多线程、同步并发算法在单用户模式下测试是很难发现问题的,通过模拟多用户的并发操作,更容易验证其是否正确和稳定。
核心模块测试一般属于基本的性能测试,它较多地关注模拟的“功能”,一般不会对服务器进行测试。
组合模块并发:具有耦合关系的核心模块进行组合并发测试;彼此独立的、内部具有耦合关系的核心模块组的并发测试;基于用户场景的并发测试。
组合模块测试一般发现接口方面的功能问题,并尽早发现综合性能问题。
在实际中,各种类型的用户都会对应一组模块,相当于不同的业务组在并发访问系统,要充分考虑实际场景,如话费管理系统中的每月10日左右的收费高峰等场景。
在编写组合模块用户并发性能测试用例时,不但要考虑用户使用场景,还要注意并发点的运用,并发点是指一定数量的用户开始执行同一功能或者操作的时间点,一组测试场景通常包含多个并发点,从而实现了核心模块同一功能或者操作的真正并发。
独立业务性能测试
独立业务实际是指一些核心业务模块对应的业务。这些模块通常具有功能比较复杂,使用比较频繁,属于核心业务等特点。主要测试这类模块和性能相关的一些算法、还要测试这类模块对并发用户的响应情况。
用户并发测试是核心业务模块的重点测试内容。
组合业务性能测试
是最接近用户实际使用情况的测试,也是性能测试的核心内容。
组合并发的突出特点是根据用户使用系统的情况分成不同的用户组进行并发,每组的用户比例要根据实际情况来进行匹配。
用户并发测试是组合业务性能测试的核心内容。“组合”并发的突出特点是根据用户使用系统的情况分成不同的用户组进行并发,每组的用户比例要根据实际情况来进行匹配。