资源描述:
《软件测试方法和技术-第九讲-基于应用服务器的测试》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、软件测试方法和技术第9章基于应用服务器的测试顾进广,Ph.D.,Professorsimon@wust.edu.cnhttp://weibo.com/gujinguanghttp://ontoweb.wust.edu.cn/simon第9章基于应用服务器的测试9.1基于Web服务器应用的测试9.2基于数据库应用服务器的测试9.3基于JavaEE应用服务器的测试9.1基于Web服务器应用的测试9.1.1Web服务器功能测试9.1.2Web安全性测试9.1.3Web性能测试9.1.4性能测试工具Flood9.1
2、.1Web服务器的功能测试GETOPTIONSHEADPOSTPUTDELETETRACECONNECT正则表达式常用的Web元素功能测试页面链接页面是否存在页面是否正确设计脚本不同的脚本语言相同的脚本语言在不同浏览器中的表现Web图形表单9.1.2Web服务器的安全测试登录、身份验证超时、Cookie和Session输入验证(防止脚本语言)数据加密、SSL(安全套接字)SQL注入XSS日志文件目录跨站点攻击(XSS)ReflectedXSSStoredXSSDOM-basedXSShttp://www.o
3、wasp.org/index.php/Cross-site_Scripting_(XSS)9.1.3Web服务器的性能测试基于Web应用系统的在线用户和响应时间来度量系统性能,基于Web应用系统的吞吐量和响应时间来度量系统性能http://www.spec.org/benchmarks.html#webApache性能测试工具abWeb服务器性能测试要点如何确定在线用户数量呢?由于时间和资源限制,不可能对Web应用系统的所有功能进行性能测试,而是根据业务的实际操作情况和技术的角度来分析,选择关键业务如果是基
4、于在线用户的性能测试需求,可以将录制脚本时记录的思考时间作为基准,以此将思考时间设置成一定范围内的随机值.基于吞吐量的性能测试需求,可以把思考时间设置为零Web站点经验点滴在执行客户端并发性能测试的过程中,需要同时监控数据库服务器、Web服务器以及网络资源等使用情况,以便对系统的性能做全面评估录制脚本和手工编写脚本相结合设置数据池,实现变量加载业务批量执行Web站点经验点滴模拟用户数的递增合理设置交易之间时间间隔模拟IP地址变量的技术超时(timeout)的设置并发用户连续执行交易数的设置错误处理Web站点
5、经验点滴利用QALoad的ActiveData技术采用复合交易测试方案尽量将执行负载测试的机器合理分布并发用户数量极限点加压机器的CPU使用率也有必要监控设置并发点HTML与URL录制方式9.1.4性能测试工具FloodApacheHTTP工程包含了一个名为HTTPD-Test的子工程——Apache的通用测试工具包,它包含了不少测试工具而其中Flood(http://httpd.apache.org/test/flood/)是人们经常使用的一个Web性能测试工具具体操作安装设置Flood实例扩展9.2基于
6、数据库应用服务器的测试9.2.1数据库服务器性能测试9.2.2数据库并发控制测试了解数据库服务器9.2.1数据库服务器性能测试大数据量测试:10万、100万、千万条记录大容量测试:某些字段存储10M、100M、1G等大体积数据。数据库性能测试过程和策略(1)理解测试需求:是校验测试还是基准测试?是单个用户大数据量测试还是多个用户并发测试?什么地方是可能的性能瓶颈?可能是哪个方面的性能测试?(应用程序or系统参数orSchema对象)选择测试工具页面级的辅助测试工具:JMeter,Webloadetc第三方监
7、控程序:如DBFlash,或者有些通过log文件,来监控动态的访问路径,高占用的进程,会话和SQL语句自定义或者常用的命令,来动态监控和获取执行SQL,PL-SQL所需要的时间,占用的CPU和内存资源.数据库系统本身的性能工具包,如在Oracle中使用的ExplainPlan,AutoTrace,PKPROF以及Statspack.设计测试场景以及测试脚本数据量设计或加载.测试环境建立和测试过程分析测试脚本设计收集数据和分析结果性能瓶颈参数优化和对比数据库性能测试过程和策略(2)Oracle数据库性能测试O
8、racle系统性能测试的目标:模拟数据库系统的数据负载,操作,侦测和获取性能测试数据,帮助开发和DBA来优化和调整数据库或者应用程序.最终的结果是获取更快的数据库响应速度或者更高吞度能力.Oracle系统性能测试的本质硬件(CPU,Memory,I/O竞争等)系统配置(SGA/PGA)应用程序(SQL,PL-SQL)网络连接Oralce系统性能测试的范围应用程序调优-ForApplicationdeveloper