2008年8月25日

关于压力测试

系统在超出预期的负载的时候,应用系统比正常状态下接收到更多来自于用户的请求,由于系统不能按正常的速度处理和响应用户的请求,有很大部分比例的用户的操作也是不正常的,如他们会不停的刷屏,重复的点击“确定”或“提交”按钮等,这些操作会引起系统处理上的混乱。在这种情况下,有些系统仅仅是处理速度慢一些,这个是在响应时间上不能满足用户的需求;有些系统则会出现灾难性的失败,并有可能扩散到整个服务器群,这是系统级的异常。
超出预期的压力在在现实生活中是经常存在的,在前几年中央某个电台向公众传播了“威客”的概念并播放了他们采访“威客”网站的CEO后,节目中提到的几个网站在几个月内都不能正常提供服务,用某些人的话来说,是“网络暴民”将这几个网站给压垮了。恰当的说法是突如其来的访问量,远远超过了网站的承受范围,导致不能提供正常的服务。
面对公众的应用服务程序,如网站和网络游戏,都应该将压力测试列入进行常规测试列表中,在上线生产前检查应用系统可以承受的压力强度,根据系统的表现作为评价系统压力性能、核实被测系统的性能行为在异常或极端条件之下的可接受性。
应用系统软件在处理超出设计指标的负载时,所反映出来的信息是非常丰富的,涉及到整个系统的各个方面,如普通用户看响应时间超出预期,业务管理人员看它的生产效率很低,系统管理员看到部分临界系统资源被消耗殆尽。这些情况的出现,除了跟被测试的应用系统本身,运行该应用软件机器硬件配置有关外,还与系统结构、重要的代码和算法、编译优化、编程工具,甚至与测试方法等都有关系。
压力测试也是需要实际使用环境相类似的测试环境进行,通过向应用系统发送超出系统处理能力的交易请求,测试系统在超出设计指标的压力情况下的处理效率及其状况。在执行测试的时候,首先是执行负载测试,在压力提升超出了设计指标就成了“压力测试”,再增加压力直到系统不能正常处理为止。分析压力测试中所获得的计数器信息,结合具体的测试用例,可以快速定位出现瓶颈的地方,如某个模块中不当的算法,或系统中不当的配置等。使开发人员或系统管理人员能快速的找到需要修改的地方等,对系统进行有针对性的优化。

若需转载或其他需要,请跟作者朱汉强联系。
联系邮箱:johannes_zhu@yahoo.com
广州益标软件技术有限公司为您提供高质量的软件测试和咨询服务。
欢迎访问:http://www.3rdtest.com/

没有评论: