《Web项目测试实战》性能测试需求分析章节样章
web项目测试流程和文档
web项目测试流程和文档Web项目测试流程和文档是确保Web应用程序质量的重要步骤。
以下是一个全面的测试流程和文档的示例:1. 需求分析和测试计划,在开始测试之前,测试团队应该仔细分析需求文档,并制定测试计划。
测试计划应包括测试的范围、测试资源、测试工具、测试时间表等信息。
2. 功能测试,功能测试是验证Web应用程序的各个功能是否按照需求文档的规定正常工作。
测试人员应该编写测试用例,覆盖所有功能,并记录测试结果。
3. 兼容性测试,兼容性测试是确保Web应用程序能在不同的浏览器、操作系统和设备上正常运行。
测试团队需要测试不同的浏览器(如Chrome、Firefox、Safari等)、操作系统(如Windows、Mac、Linux等)和设备(如PC、平板、手机等)。
4. 性能测试,性能测试是验证Web应用程序在各种负载条件下的性能表现。
测试团队应该进行负载测试、压力测试、并发用户测试等,以确保Web应用程序在高负载情况下也能正常运行。
5. 安全测试,安全测试是确保Web应用程序的安全性。
测试团队应该进行漏洞扫描、渗透测试等,以发现并修复潜在的安全漏洞。
6. 用户验收测试,用户验收测试是由最终用户或代表用户的人员进行的测试,以验证Web应用程序是否符合用户的期望和需求。
测试文档应该包括测试计划、测试用例、测试报告等内容。
测试报告应该清晰地记录测试结果,包括已发现的缺陷、缺陷的严重程度、缺陷修复情况等信息。
总之,Web项目测试流程和文档是确保Web应用程序质量的重要步骤,通过全面的功能测试、兼容性测试、性能测试、安全测试和用户验收测试,可以确保Web应用程序的质量和稳定性。
web项目性能测试方案
web项目性能测试方案任务:测试JBOSS环境下UBSS项目的性能目标:测试缴费部分(前台缴费,IC卡充值)在并发数从50-100递增的性能指标,不要求对结果进行分析步骤:1.搭建测试环境,要求与真实环境大概一致(关注在现有license情况下,UBSS系统支持的最大并发数)2.准备数据脚本(SQL和存储过程)3.准备测试脚本(Vuser scrīpts,scenario)4.进行性能测试测试范围针对UBSS项目,抽取对系统影响最大、最为典型的业务交易,构建场景,以此评判系统的整体性能和实际性能表现a.用户前台缴费b.标准用户IC卡充值测试内容1.基准测试概念:检查每个业务的基准响应时间(系统整体空闲,无额外进程运行并占用系统资源)方法:单用户运行业务多次,获取该业务的平均响应时间序号功能名称并发用户数循环次数操作间隔循环间隔1-1 前台缴费 1 100 3 31-2 IC卡充值 1 100 3 32.单个交易负载测试概念:设定负载序列,并发用户数为X{20,30,50,....},收集系统单个交易在不同负载级别的性能表现方法:设置并发用户数等于X,关键步骤处设置并发点,每个用户运行N个iteration,获取平均响应时间和吞吐量用户登陆方式:每2秒登陆2个序号功能名称并发用户数循环次数操作间隔循环间隔2-1 前台缴费 5 50 3 32-2 前台缴费10 50 3 32-3 前台缴费15 50 3 3 注:响应时间超过30S2-4 前台缴费20 50 3 3 注:阻塞,不进行测试2-5 IC卡充值 5 50 3 32-6 IC卡充值10 50 3 32-7 IC卡充值15 50 3 32-8 IC卡充值20 50 3 33.组合交易负载测试概念:多个交易组合在一起,设定负载序列,并发数为X{20,30,50,....},收集系统在不同负载级别的性能表现方法:设置并发总数,各用户数按比例分配,每个用户运行N分钟,获取平均响应时间和吞吐量序号功能名称并发用户总数比例持续时间操作间隔循环间隔3-1 前台缴费,IC卡充值 5 2:3 20m 3 3 3-2 前台缴费,IC卡充值10 2:3 20m 3 3 3-3 前台缴费,IC卡充值15 2:3 20m 3 3 3-4 前台缴费,IC卡充值20 2:3 20m 3 3 性能指标1.主机系统性能指标CPU使用率内存占用率磁盘读写2.数据库性能指标(略),可直接看应用系统所在主机情况3.中间件指标(略),可直接看应用系统所在主机情况4.业务指标平均响应时间最长响应时间吞吐率衩测系统环境描述1.系统架构J2EE架构,多层结构,即展示层、应用服务层、数据服务层 2.主机环境主机名型号主机IP CPU数内存磁盘用途数据库主机 192.168.1.8应用主机 192.168.1.33 1 2G3.软件环境项目信息备注操作系统 window xp 应用主机linux 数据库主机数据库 oracle10G中间件 EOS5.3 for JBOSS测试工具 LoadRunner8.1 破解4.数据库环境数据库实例 orcl数据规模用户数量:837,060客户数量:857,043帐户数量:832,727未缴费帐单:403,839IC卡用户信息:404,607发票数量:1,169,600用户表具信息:846,999计费策略:845,771已缴费帐单:5,593,9515,测试客户机序号 IP 操作系统配置用途1 192.168.1.30 window xp pentium4 3.2GHz memory 1G generator+controoler测试报告由anilys自动生成---------------------------------------------------------------系统性能测试方案1引言1.1编写目的编写本方案的目的是用于指导XXXX系统的性能测试,主要从测试环境、测试工具、测试策略、测试具体执行方法、任务与进度表等事先计划和设计。
《Web性能测试实战》性能测试用例模板
《Web性能测试实战》性能测试用例模板1文档介绍1.1文档目的1.2文档范围1.3读者对象1.4参考文献1.5术语与解释解释缩写、术语2测试需求分析2.1被测试对象的介绍2.2测试范围与目的2.3测试环境与测试辅助工具的描述3性能测试用例3.1预期性能指标测试用例下面的测试方法比较详细,也可以根据实际需要把所有的指标写在一起,简要描述测试方法,以达到节省时间的目的(列出测试对象、期望的性能、实际性能三项即可以)。
1 指标A描述用例编号:001性能描述:用例目的:前提条件:特殊的规程说明:用例间的依赖关系:步骤输入/动作期望的性能(平均值)实际性能(平均值)回归测试1. 示例:典型值…2. 示例:边界值…3. 示例:异常值…4. …5. …6. …2 指标B描述用例编号:002性能描述:用例目的:前提条件:特殊的规程说明:用例间的依赖关系:步骤输入/动作期望的性能(平均值)实际性能(平均值)回归测试1. 示例:典型值…2. 示例:边界值…3. 示例:异常值…4. …5. …6. ………3.2用户并发测试:核心模块1 核心模块A测试内容描述功能目的方法并发用户数与事务执行情况并发用户数事务平均响应时事务最大响应时平均每秒处理事事务成功率每平均流量(字节/间间务数秒点击率秒)20253035404550并发用户数与数据库主机并发用户数CPU利用率MEM利用率磁盘I/O情况DB参数1其它参数20253035404550并发用户数与应用服务器的关系表并发用户数CPU利用率MEM利用率磁盘I/O情况202530354045502 核心模块B测试内容描述……3.3用户并发测试:组合模块1 模块组合描述A功能目的方法并发用户数与事务执行情况并发用户数事务平均响应时间事务最大响应时间平均每秒事务数事务成功率每秒点击率平均流量(字节/秒)业务1业务2业务3业务1业务2业务3业务1业务2业务3业务1业务2业务320253035404550并发用户数与数据库主机并发用户数CPU利用率MEM利用率磁盘I/O情况DB参数1其它参数20253035404550并发用户数与应用服务器的关系表并发用户数CPU利用率MEM利用率磁盘I/O情况202530354045502 模块组合描述B……3.4大数据量测试1 大数据量场景A描述编写用例的格式如下:功能目的方法并发用户数与事务执行情况输入说明事务平均响应事务最大响应平均每秒处理事事务成每秒点击平均流量(字节/时间时间务数功率率秒)2 大数据量场景B描述编写用例的格式如下:功能目的方法并发用户数与事务执行情况输入说明事务平均响应时间事务最大响应时间平均每秒处理事务数事务成功率每秒点击率平均流量(字节/秒)……3.5疲劳强度测试1 疲劳强度测试场景A描述极限名称A例如“最大并发用户数量”前提条件运行时间输入/动作输出/响应是否能正常运行例如10个用户并发操作例如20个用户并发操作…故障发生的时刻故障描述……任务A无故障运行的平均时间间隔(CPU小时)任务A无故障运行的最小时间间隔(CPU小时)任务A无故障运行的最大时间间隔(CPU小时)2 疲劳强度测试场景B描述……3.6网络性能测试1 网络测试场景A描述目的测试广域网网络资源在不同并发用户条件下的使用情况方法在不同的广域网带宽下(64K、128K、256K¡-.)使用LoadRunner录制的日常业务的应用脚本,以不同的并发数进行并发性测试,记录各种用户连接数下,不同并发请求的性能变化;同时记录路由器端口的流量和其他数据。
Web性能测试实战
Web性能测试实战2010年08月29日《Web性能测试实战》作者:陈绍英夏海涛金成姬著(2006年06月第1版第1次)电子工业出版社 Publishing House of Electronics Industry北京市海淀区万寿路173信箱(100036)内容简介本书是一本总结实践经验和成果的作品,主要为测试人员规划、设计、实施web性能测试而编写。
本书既包含web性能测试的基础理论,又包含理论在实践中的应用。
本书第1章介绍了性能测试基础知识和性能测试常见的误区。
第2章专门针对web性能测试提出了“web全面性能测试模型”,把制订性能测试策略、编写测试用例计划以及使用模型的方法融会在一起,提供了规划与设计性能测试的新思路。
第3章进一步讨论了如何在项目中进行性能测试需求分析、设计与实施性能测试,并深入讨论了基于场景设计性能测试用例的方法。
第4章则介绍了针对web应用程序进行性能分析的基本方法。
第5章是案例部分,分别以银行卡、电子政务、门户网站等典型web应用系统为实例,讨论了如何在项目中应用“web全面性能测试模型”。
通过真实的实例,向读者展示了如何在项目中制订性能测试计划、实施与控制性能测试、分析系统瓶颈等内容。
本书主要针对项目经理、测试组长、测试(设计)工程师以及对性能测试感兴趣的开发人员。
通过本书的学习,可以更加规范地做好性能测试设计与实施工作。
陈绍英,北京大学软件工程硕士.拥有多年的软件开发以及测试经验,现在主要从事软件测试工作,研究方向为软件测试过程管理和测试分析技术.性能测试等.拥有大型电子政务系统.银行卡业务系统等软件项目的测试管理及技术经验.善于组织和协调工作,在软件项目管理和测试管理方面拥有很高的能力,在工作中积累了丰富的管理经验.夏海涛,吉林大学计算机系硕士.拥有多个大型金融.电信.税务和电子政务系统等行业软件项目的测试项目管理及技术实施经验.熟悉Mercury系列的测试工具,并曾参与规划和实现基于以上工具的自动化回归测试和性能测试解决方案.曾经自行开发性能测试工具并成功付诸应用.主要研究方向为持续集成与自动化测试框架设计.自动化功能回归测试.大型项目群性能测试等.金成姬,博彦科技本地化工程师,从事日语.韩语等语种软件产品的本地化工作.P5,性能测试的重要概念请求响应时间:指的是客户端发出请求道得到响应的整个过程的时间。
14 Web系统性能测试实战
制定测试案例(续)
3.
4.
5.
6. 7.
在执行上述两种策略之一后,进入流量信息统计查询页面。 每个虚拟用户查询自己IP地址列表所对应的流量信息。 在上述操作完成后,虚拟用户点击页面中的“详细信息”链 接进入下一层查询页面。在这里,由于每个虚拟用户的“详 细信息”链接的内容是不同的。 在上述操作完成后,虚拟用户点击页面中的“详细信息”链 接进入第三层查询页面。同样需要改写测试脚本中“详细信 息”链接里IP地址的值为动态获得的值。 退出系统,整个操作完成。 在本次测试中,并发用户数设置为50,每个虚拟用户只执行 一次脚本而不循环多次。
Page 21
分析应用程序
描述系统配置
连接到系统的用户数 应用程序客户端的配置(硬件,内存,操作系统,软 件和开发工具) 使用的数据库和WEB服务器的类型(硬件,数据库类 型,操作系统和文件系统) 服务器和客户端的通信方式 前端客户端和后台服务器端的中间件配置和应用程序 服务器 可能影响响应时间的其他网络主件(调制解调器等) 通信设备的吞吐量和每个设备可以处理的并发用户数
Page 7
测试计划
制定一个全面的测试计划是负载测试成功的关键。定义明确的 测试计划将确保制定的方案能完成负载测试目标。 负载压力测试计划过程的4个步骤:
分析应用程序 对硬件和软件组件、系统配置以及典型的使用模型有一个透彻的 了解。 定义测试目标 开始测试之前,应精确地定义想要实现的目标。 计划方案实施 确定如何实现测试目标 ,定义性能度量的范围,确定需要的 Vuser 的数量和类型 。 检查测试目标 测试计划应该基于明确定义的测试目标。如:度量最终用户响应 时间、定义最优的硬件配置、检查可靠性、查看硬件或软件升级、 评估新产品、确定瓶颈、度量系统容量等。
Web前端开发实训案例教程初级前端性能分析工具使用
Web前端开发实训案例教程初级前端性能分析工具使用Web前端开发实训案例教程初级前端性能分析工具使用随着互联网的快速发展,网页的性能优化也变得越来越重要。
在Web前端开发中,了解和使用前端性能分析工具,可以帮助开发人员更好地优化网页性能,提升用户体验。
本文将介绍一款初级前端性能分析工具的使用方法,并结合实际案例进行讲解,帮助读者快速上手。
一、什么是前端性能分析工具前端性能分析工具是用于分析网页性能的工具,它可以帮助开发人员找出网页加载速度慢、卡顿等性能问题的原因,并提供相应的优化方案。
常见的前端性能分析工具包括谷歌开发者工具(Chrome DevTools)、Firefox开发者工具(Firefox Developer Tools)等。
二、Chrome DevTools的基本使用方法1. 打开Chrome浏览器,进入需要进行性能分析的网页。
2. 按下键盘上的F12键,或右键点击页面空白处,选择“检查”。
3. 在打开的开发者工具界面中,点击顶部菜单栏的“Performance”选项卡。
4. 点击“Record”按钮,开始记录网页的性能数据。
5. 进行相应操作或加载页面,然后点击“Stop”按钮停止记录性能数据。
6. 在界面下方的性能分析面板中,可以查看网页加载整体耗时、渲染时间、JavaScript执行时间等详细信息。
三、应用实例:页面加载速度优化以一个简单的网页加载速度优化为例,介绍前端性能分析工具的具体使用方法。
1. 打开Chrome浏览器,进入需要优化的网页。
2. 按下键盘上的F12键,或右键点击页面空白处,选择“检查”。
3. 在开发者工具界面中,点击顶部菜单栏的“Performance”选项卡。
4. 点击“Record”按钮,开始记录网页的性能数据。
5. 进行页面加载操作,等待页面完全加载完毕。
6. 点击“Stop”按钮停止记录性能数据。
7. 在性能分析面板中,查看网页加载过程中存在的性能瓶颈。
范例(web系统性能测试报告)
***********系统性能测试报告南海东软信息技术职业学院YYYY年MM月DD日文档说明本文档所涉及到的文字和图表,仅限开发方和需求方内部使用,未经开发方的书面许可,请勿扩散到任何第三方。
目录1. 总述 (1)1.1 测试对象 (1)1.2 测试目的 (1)1.3 测试环境 (1)1.4 测试依据 (2)1.1参考资料 (2)1.2术语及缩写词 (2)1.3计算公式 (2)2. 测试方法 (3)2.1 测试模型 (3)2.2 测试过程简述 (3)2.3 需记录的数据 (3)3. 测试用例 (4)测试编号:1 (4)4. 测试结果 (5)4.1 查看记录内容 .................................................. 错误!未定义书签。
5. 测试结果分析 (6)6. 附件 (7)6.1 原始数据和计算结果 (7)《性能测试技术与实践》南海东软信息技术职业学院1. 总述1.1 测试对象web系统1.2 测试目的目的是在尽可能在模拟生产环境的前提下,实现以下目标:测试交易线处理程序在生产环境的业务和用户量下,性能能否满足业务人员操作的需求;模拟系统在生产能力峰值时的性能状况;通过较长时间的测试执行可导致程序发生由于内存泄露引起的失败,揭示程序中的隐含的问题或冲突,从而修复体系中的薄弱环节。
发现性能瓶颈,为后期性能调优提供参考依据。
验证稳定性与可靠性:在一个生产负荷下执行测试一定的时间来评估系统稳定性和可靠性是否满足要求。
1.3 测试环境1.4 测试依据1.5 参考资料1.6 术语及缩写词●测试时间:一轮测试从开始到结束所使用的时间●平均响应时间:测试线程向被测系统发请求,所有请求的响应时间的平均值。
●处理能力:在某一特定环境下,系统处理请求的速度。
●最大并发用户数:在给定的预期平均响应时间下,系统最多能支持多少个并发用户。
这个数据就是实际可以同时使用系统的用户数。
Web应用功能测试实战
Web应用功能测试实战随着互联网的快速发展,Web应用在我们日常生活中扮演着越来越重要的角色。
为了保证Web应用的质量,功能测试变得尤为重要。
本文将介绍Web应用功能测试的实战方法和注意事项。
一、概述功能测试是验证Web应用的各项功能是否正常工作的过程。
通过功能测试,我们可以发现并修复潜在的Bug,并确保用户可以顺利使用Web应用的各项功能。
在进行功能测试时,我们需要关注以下几个方面:1. 功能完整性:验证功能是否按照设计要求实现。
2. 功能正确性:验证功能是否输出正确的结果。
3. 功能一致性:验证功能在不同的环境和条件下是否一致。
二、测试准备进行Web应用功能测试之前,我们需要进行一些测试准备工作:1. 确定测试目标和范围:明确需要测试的功能和对应的测试范围。
2. 搭建测试环境:建立与实际环境相似的测试环境,包括硬件和软件环境。
3. 准备测试数据:根据测试场景和需求,准备相应的测试数据。
4. 编写测试用例:根据功能需求,编写详细的测试用例。
三、功能测试实战步骤进行Web应用功能测试时,可以按照以下步骤进行:1. 正确性测试:验证Web应用的功能是否按照需求规格说明书中的要求实现。
根据测试用例,逐个测试功能点,并验证其输出结果是否正确。
2. 完整性测试:验证Web应用的所有功能是否都已经实现,没有遗漏。
通过全面的功能测试,确保所有功能点都被覆盖到。
3. 一致性测试:验证Web应用在不同的浏览器、操作系统和网络环境下是否一致。
这是因为Web应用的用户可能使用不同的设备和环境来访问。
4. 兼容性测试:验证Web应用在不同的设备和浏览器上是否正常工作。
测试兼容性时,需要将Web应用在各种环境下进行测试,包括不同分辨率的屏幕、不同版本的浏览器等。
5. 异常处理测试:验证Web应用在异常情况下的处理能力。
例如,测试输入非法数据、网络异常、服务器崩溃等情况下,Web应用的应对措施和提示是否合理有效。
四、注意事项在进行Web应用功能测试时,还需要注意以下几点:1. 测试用例的质量:编写高质量的测试用例是进行功能测试的重要环节。
web性能测试方案模板
测试规范文档性能测试方案模板VERSION 1.0XXXX年x月文档修订记录文档信息审批信息修改历史目录1. 测试目的 (1)2. 测试范围 (1)2.1. 测试背景 (1)22.需要测试的特性 (1)2.3. 不需要测试的特性 (1)3. 准则 (1)3.1. 启动准则 (1)3.2. 结束准则 (1)3.3. 暂停/再启动准则 (2)4. 模型 (2)4.1. 业务模型 (2)4.2. 业务指标 (2)4.3. 测试模型 (2)4.4. 测试指标 (2)5. 测试策略 (2)5.1. 测试发起策略 (2)5.2. 测试执行策略 (2)5.3. 测试监控策略 (3)6. 测试内容 (3)6.1. 基准测试 (3)6.2. 单交易负载测试 (3)6.3. 综合场景负载测试 (3)6.4. 接口测试 (3)6.5. 稳定性测试 (3)7. 测试实施准备 (3)7.1. 测试环境准备 (3)7.2. 测试工具准备 (3)7.3. 测试挡板准备 (4)7.4. 测试数据准备 (4)7.5. 测试脚本准备 (4)8. 测试组织结构 (4)9. 测试环境及工具需求 (4)9.1. 总体网络拓扑图 (4)92 测试环境机器配置表 (4)93 软件配置 (5)10. 测试输出 (5)10.1. 过程性输出 (5)10.2. 结果输出 (5)11. 测试计划 (5)12. 测试风险分析 (5)1. 测试目的『阐述本次性能测试目的,对需求分析的目的进行扩展性描述』2. 测试范围2.1. 测试背景『阐述本次性能测试的技术及业务背景;对于改进型项需阐述其改进的方法;』2.2. 需要测试的特性『阐述本次性能测试需要进行测试部分的特点』2.3. 不需要测试的特性『阐述本次性能测试不需要进行测试的部分』3. 准则3.1. 启动准则『阐述测试执行前必备的入口条件』3.2. 结束准则『阐述测试执行退出的条件』i33暂停/再启动准则『阐述测试执行过程中在何种条件下暂停执行;若执行暂停,需阐述再次启动执行过程的约束条件。
WEB系统性能测试计划
XXX系统性能测试计划日期2012/5/221一、性能测试方案文档信息 (3)二、XXX简介 (3)2.1、XXX背景与结构 (3)2.2、XXX业务性能分析 (3)三、XXX性能测试环境与团队组成 (3)3.1、性能测试环境物理结构图 (3)3.2、性能测试环境软硬件列表 (3)3.3、性能测试团队组成人员 (4)四、XXX测试方案 (4)4.1、性能测试目标与标准 (4)4.2、性能测试方法 (4)五、XXX性能测试计划进度 (8)六、XXX性能测试风险分析 (8)七、XXX性能测试结果记录 (8)八、附录 (8)2一、性能测试文档信息文档版本号日期作者审核人说明V1.0 2012年5月22日二、XXX简介2.1、XXX背景与结构2.2、XXX业务性能分析三、XXX性能测试环境与团队组成3.1、性能测试环境物理结构图3.2、性能测试环境软硬件列表硬件:设备配置终端用户PC机3软件:Loadrunner、windows性能分析器、linux性能分析器、office3.3、性能测试团队组成人员四、XXX测试方案4.1、性能测试目标与标准4.2、性能测试方法2.1稳定性测试测试系统长时间运行的稳定性42.1.1测试环境系统稳定运行,WEB/数据库服务器一台、FMS媒体服务器一台、客户端PC机、局域网网络。
2.1.2测试项目和方法2.2 响应时间测试测试终端各个功能模块的响应时间2.2.1测试环境系统稳定运行,WEB/数据库服务器一台、FMS媒体服务器一台、客户端PC机,单用户/多用户登陆,局域网/广域网网络。
2.2.2测试项目和方法2.2.3测试预期结果2.3 系统并发能力测试系统在不同数目用户登陆的情况下,系统的运行能力2.3.1测试环境使用loadruner模拟多路用户登陆的情况下,同时使用相同功能点的情况下,系统的运行能力2.3.2测试方法多用户相同功能点操作的的情况下的操作系统状况、网络状况、数据库状况。
web项目测试实战性能测试结果分析样章报告
5.4.2测试结果分析LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要、并发数、平均事务响应时间、每秒点击数、业务成功率、系统资源、网页细分图、Web服务器资源、数据库服务器资源等几个方面分析,如图5- 1所示。
性能测试结果分析的一个重要的原则是以性能测试的需求指标为导向。
我们回顾一下本次性能测试的目的,正如错误!未找到引用源。
所列的指标,本次测试的要求是验证在30分钟内完成2000次用户登录系统,然后进行考勤业务,最后退出,在业务操作过程中页面的响应时间不超过3秒,并且服务器的CPU 使用率、内存使用率分别不超过75%、70%,那么按照所示的流程,我们开始分析,看看本次测试是否达到了预期的性能指标,其中又有哪些性能隐患,该如何解决。
图5- 1性能测试结果分析流程图结果摘要LoadRunner进行场景测试结果收集后,首先显示的该结果的一个摘要信息,如图5- 2所示。
概要中列出了场景执行情况、“Statistics Summary(统计信息摘要)”、“Transaction Summary(事务摘要)”以及“HTTP Responses Summary(HTTP响应摘要)”等。
以简要的信息列出本次测试结果。
图5- 2性能测试结果摘要图场景执行情况该部分给出了本次测试场景的名称、结果存放路径及场景的持续时间,如图5- 3所示。
从该图我们知道,本次测试从15:58:40开始,到16:29:42结束,共历时31分2秒。
与我们场景执行计划中设计的时间基本吻合。
图5- 3场景执行情况描述图Statistics Summary(统计信息摘要)该部分给出了场景执行结束后并发数、总吞吐量、平均每秒吞吐量、总请求数、平均每秒请求数的统计值,如图5- 4所示。
从该图我们得知,本次测试运行的最大并发数为7,总吞吐量为842,037,409字节,平均每秒的吞吐量为451,979字节,总的请求数为211,974,平均每秒的请求为113.781,对于吞吐量,单位时间内吞吐量越大,说明服务器的处理能越好,而请求数仅表示客户端向服务器发出的请求数,与吞吐量一般是成正比关系。
web项目测试实战性能测试结果分析样章报告
5.4.2测试结果分析LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要、并发数、平均事务响应时间、每秒点击数、业务成功率、系统资源、网页细分图、Web服务器资源、数据库服务器资源等几个方面分析,如图5- 1所示。
性能测试结果分析的一个重要的原则是以性能测试的需求指标为导向。
我们回顾一下本次性能测试的目的,正如错误!未找到引用源。
所列的指标,本次测试的要求是验证在30分钟内完成2000次用户登录系统,然后进行考勤业务,最后退出,在业务操作过程中页面的响应时间不超过3秒,并且服务器的CPU 使用率、内存使用率分别不超过75%、70%,那么按照所示的流程,我们开始分析,看看本次测试是否达到了预期的性能指标,其中又有哪些性能隐患,该如何解决。
图5- 1性能测试结果分析流程图结果摘要LoadRunner进行场景测试结果收集后,首先显示的该结果的一个摘要信息,如图5- 2所示。
概要中列出了场景执行情况、“Statistics Summary(统计信息摘要)”、“Transaction Summary(事务摘要)”以及“HTTP Responses Summary(HTTP响应摘要)”等。
以简要的信息列出本次测试结果。
图5- 2性能测试结果摘要图场景执行情况该部分给出了本次测试场景的名称、结果存放路径及场景的持续时间,如图5- 3所示。
从该图我们知道,本次测试从15:58:40开始,到16:29:42结束,共历时31分2秒。
与我们场景执行计划中设计的时间基本吻合。
图5- 3场景执行情况描述图Statistics Summary(统计信息摘要)该部分给出了场景执行结束后并发数、总吞吐量、平均每秒吞吐量、总请求数、平均每秒请求数的统计值,如图5- 4所示。
从该图我们得知,本次测试运行的最大并发数为7,总吞吐量为842,037,409字节,平均每秒的吞吐量为451,979字节,总的请求数为211,974,平均每秒的请求为113.781,对于吞吐量,单位时间内吞吐量越大,说明服务器的处理能越好,而请求数仅表示客户端向服务器发出的请求数,与吞吐量一般是成正比关系。
Web应用测试性能及功能测试标准(免费)
Web应用测试性能及功能测试标准样本前提:并发用户数为50个以内,在线用户数为500个以内,CPU占用都在70%以下,内存在70%以下,I/O处于不繁忙状态1. 用户登录响应时间不能超过5S。
2. 按用户/账户/客户查询与缴费两个操作响应时间都需要在3~5S完成(但是如果数据量超过50条情况下响应时间分别为7S以内)。
3. 所有查询数据在500条以内,响应在5S以内(包括日志,余额查询等)。
4. 所有查询数据在5000条以上,响应时间在10S以内(包括日志,余额查询等),如果数据量巨大(例如:10万条等),根据实际情况限制处理。
5. 所有查询数据500~5000条之间,响应时间在8S以内(包括日志,余额查询等)。
6. 所有查询操作都需要显示进度导航条,便于用户感受(针对特殊过程,与开发具体讨论)。
7. 所有导入/导出/生成文件数据在500条以内,响应在5S以内(包括日志,余额查询等)。
8. 所有导入/导出/生成文件数据在5000条以上,响应时间在15S以内(包括日志,余额查询等), 如果数据量巨大(例如:10万条等),根据实际情况限制处理。
9. 所有导入/导出/生成文件数据500~5000条之间,响应时间在10S以内(包括日志,余额查询等)。
10. 所有查询导入/导出/生成文件数据操作都需要显示进度导航条,便于用户感受。
11. 所有系统处理(具体指:销帐,返销账,扎账处理等,不属于统计、查询、导入、导出类)数据的过程时间不能超过5S(针对特殊过程,与开发具体讨论)。
12. 所有功能项(从“网厅对账”切换到“退费管理”、“返销帐”切换到“扎帐处理”等)WEB页面切换时间在3S 以内。
13. 添加/删除/修改操作的时候,如果是一条数据,响应时间在3S以内。
14. 添加/删除/修改操作批量数据,响应时间在5S以内。
15. 如果显示数据包含多列,列距可以手动移动。
16. 显示数据包含多列,暂定义如果列数不超过7列的情况下,全部显示在WEB页面。
Web应用测试(性能测试)
Web性能测试的主要术语
• TPS: 每秒钟系统能够处理的交易或者事务的数量。它是 衡量系统处理能力的重要指标。
• 资源利用率: 不用系统资源使用程度,例如服务器的CPU利用率, 磁盘利用率等,性能测试的资源利用率主要针对Web 服务器、操作系统、数据库服务器,网络等。
Web性能测试的主要术语
• 虚拟用户: 模拟浏览器向Web服务器发送请求并接受响应的一个 进程或线程。
Web应用系统性能测试类别
• (1)预期指标的性能测试:软件需求规格说明书或设 计说明中指出的性能指标。
• (2)独立业务性能测试:针对核心业务模块中功能比 较复杂、使用比较繁琐、核心的业务等进行测试。
• (3)组合业务性能测试:模拟多用户同时对一个或多 个模块的不同功能进行操作。是接近用户实际情况的 测试。
5.测试场景设计
同时对脚本进行 完善,需要加入 集合点、检查点、 事务以及对一些 数据进行参数化、 关联等处理。
6.测试场景运行
• 尽量模拟用户的真实环境。 • 测试的执行环境是独立的、不受其他人员或系统的
干扰。 • 测试用的主控机和负载机应安装同版本的性能测试
工具。 • 测试执行前,应明确要监控的相应指标,提前配置
本不必要的冗余代码,对脚本进行完善,在编写脚本时, 还需要注意脚本之间的前后依赖性。 • 在编写测试脚本的时候,需要注意编码的规范和代码的 编写质量问题。建立脚本的规范模版,脚本的创建人、 创建日期、项目名称、脚本功能描述、参数化数据、关 键步骤等都应该有注释。 • 脚本要纳入到配置管理,保留脚本的历史版本。
Web应用系统性能测试类别
• (8)疲劳强度性能测试:以一定的负载压力长时间运 行系统的测试。
• (9)网络性能测试:主要测试应用系统用户数与网络 带宽的关系。
Web前端开发实训案例教程初级前端框架的性能测试与评估方法
Web前端开发实训案例教程初级前端框架的性能测试与评估方法一、引言随着Web应用程序的快速发展,前端框架的应用呈现出不断增长的趋势。
使用前端框架能够提高开发效率,但同时也会带来一定的性能问题。
因此,在进行Web前端开发实训时,必须对初级前端框架进行性能测试与评估,保证其在用户端能够具备良好的表现。
本文将介绍初级前端框架的性能测试与评估方法。
二、性能测试方法1. 资源加载速度测试资源加载速度是衡量前端框架性能的重要指标之一。
可以利用浏览器的开发者工具中的Network选项对框架所需的CSS、JavaScript文件进行加载速度的测试。
通过使用不同的网络环境和设备,可以模拟不同用户场景下的加载速度,为性能评估提供参考。
2. 页面渲染性能测试页面渲染性能是指页面元素在浏览器中显示的速度。
使用浏览器的开发者工具中的Timeline选项,记录页面渲染过程中的关键事件,并分析各事件之间的时间间隔,从而评估前端框架的渲染性能。
3. 内存占用与泄漏测试前端框架的运行需要消耗一定的内存资源,因此,进行内存占用与泄漏测试是必不可少的。
可以使用浏览器的开发者工具中的Memory选项来监测框架运行时的内存占用情况,并通过监测内存泄漏情况,评估框架的稳定性和性能。
三、性能评估方法1. 性能指标量化评估在进行性能评估时,可以首先确定一些性能指标,如页面加载时间、首次渲染时间、CPU和内存占用等,并根据实际需求对这些指标进行量化评估。
可以使用工具对性能指标进行采集和分析,得出性能评估结果。
2. 用户体验评估性能评估不仅局限于指标的量化评估,还需要考虑用户体验。
可以通过用户观察、问卷调查等方式,收集用户对前端框架的使用体验和满意度。
根据用户反馈,对框架的性能进行综合评估。
四、性能优化方法在性能测试与评估的基础上,可以根据评估结果提出性能优化的方案。
以下是几种常见的性能优化方法:1. 减少HTTP请求数量:合并CSS和JavaScript文件,使用雪碧图等技术来减少页面的HTTP请求。
web性能测试计划
XXXX性能测试目录1.文档介绍 (3)1.1 文档目的 (3)1.2 参考文献 (3)1.3编写目的 (3)2.性能相关描述 (4)2.1性能测试指标 (4)2.2性能测试范围 (4)2.3 名词术语约定 (5)3 测试环境 (6)3.1生产环境系统架构 (6)3.2测试环境系统架构 (7)3.3 生产环境软硬件配置 (7)3.4 测试环境软硬件配置 (7)3.5 负载机软硬件配置 (8)4.需求分析 (8)4.1业务模型 (8)4.2 性能指标 (9)5 测试策略 (10)5.1测试执行策略 (11)5.2 测试监控策略 (11)6测试场景 (12)6.1前台开单测试场景 (12)7测试准备 (13)7.1测试工具准备 (13)7.2测试脚本及程序准备 (14)7.3测试数据准备 (14)7.4测试环境准备 (14)8测试组织架构 (15)9项目风险 (16)1.文档介绍1.1 文档目的本测试报告为XXX平台项目的性能测试报告,目的在于总结测试阶段的测试以及分析测试结果,描述系统是否符合性能需求。
1.2 参考文献1.3编写目的从文档描述XXX发布系统性能测试的范围、方法、资源、进度,作为XXX发布系统性能测试的依据,该文档的目的主要有:1、明确测试范围、测试对象2、明确测试目标3、明确测试环境需求,包括:测试需要的软、硬件环境以及测试人力需求4、确定测试方案,测试的方法和步骤5、指定测试工作的时间安排6、分析测试的风险,寻找规避办法7、确定测试需求输出的结果和结果表现形式2.性能相关描述2.1性能测试指标(1).基于XXX业务量的要求,评估XXX平台是否能满足性能要求(2).进行配置测试,找到相对合理的测试(3).对XXX进行定容定量,提供规划参考(4).验证系统的稳定性,验证系统的容错能力(5).测试并找到系统可能存在的性能问题,分析系统瓶颈2.2性能测试范围通过性能测试需求调研,分析用户使用行为.对系统的用户及业务数据量作了定量分析,性能测试将主要集中在表A-1中列出的业务过程.表A-1 测试范围2.3 名词术语约定(1)负载:模拟业务操作对服务器造成压力的过程(2)性能测试(Performance Testing):模拟用户负载来测试系统在负载情况下,系统的响应时间,吞吐量等指标是否满足性能要求(3)负载测试(Load Testing):在一定的软硬件环境下,通过不断加大负载(不同虚拟用户数)来确定在满足性能指标情况下能够承受的最大用户数.简单说,可以帮助我们对系统进行定容定量找出系统性能的拐点,给予生产环境规划建议.这里的性能指标包括TPS(每秒事物数),RT(事物平均响应时间),CPU using(CPU 利用率),Mem Using(内存使用情况)等硬件指标.从操作层面上来说,负载测试也是一种性能测试手段,比如下面配置测试就需要变换不同的负载来进行测试.(4)配置测试(Configuration Testing):为了合理的调配资源,提高系统运行效率,通过测试手段来获取,验证,调整配置信息的过程.通过这个过程我们可以收集到不同配置反映出来的不同性能,从而为设备选择,设备配置提供参考.(5)压力/强度测试(Stress Testing):在一定的软硬件条件下,通过高负载的手段来使服务器资源(强度服务器资源,硬件资源)处于极限状态,测试系统在存在极限状态下长时间运行是否稳定,确定是否稳定的标准包括TPS,RT,CPU USING,MEM USING等(6)稳定性测试(Endurance Testing):在一定的硬软件环境下,长时间运行一定负载(一般是最佳并发数),确定系统在满足性能指标的前提下是否运行稳定.在上面的压力/强度测试区别在于负载并不强调在极限状态下,着重的是在满足性能要求的情况下,系统的稳定性.一般我们会在满足性能要求的负载下加大1.5倍到2倍的负载量进行测试(7)TPS:每秒完成的事物数,通常指每秒成功的事物数,性能测试中重要的综合性能指标,一个事物是一个业务度量单位,有时候一个事务会包括多个子操作,但是为了方便统计,我们会把这个多子操作计为一个事务.比如一笔电子支付操作,在后台可能会经历会员系统,财务系统,支付系统,会计系统等,但是对于用户来说只想知道整比支付花费多长时间.(8)RT/ART(Response Time/average Response Time):响应时间/平均响应时间,指一个事务花费多长时间完成(多长时间响应客户),为了使这个响应时间更具代表性,会统计更多时间来取平均值,即得到了事务平均响应时间(ART),为了方便大家通常会直接用RT来替代ART,以后看到ART以及RT 是代表同一个意思.(9)PV(Page View):每秒用户访问页面的次数,此参数用来分析平均每秒有多少用户访问页面. 3 测试环境3.1生产环境系统架构WebSever负责反向代理,静态请求处理NginxMysql3.2测试环境系统架构3.3 生产环境软硬件配置表A-2 生产环境软硬件配置硬件名称数量硬件配置软件配置备注DB ServerWeb Server3.4 测试环境软硬件配置表A-3 测试环境软硬件配置硬件名称数量硬件配置软件配置备注DB Server1CPU:Intel(R) Core(TM) i5-6500 CPU @ Win7 64bitJmeter 3.2现在测试环境试测,第二3.5 负载机软硬件配置表A-4 负载机软硬件配置4.需求分析4.1业务模型前台开单业务模型 A5测试业务模型商品往来表A-6是业务量统计表A-6 业务量统计表A-7是存量数据统计表A-7 历史数据统计4.2 性能指标表A-8是业务性能指标表A-8 业务统计(pv)综合一下上午….表A-9 业务指标硬件指标如表 A-105 测试策略此次性能测试目的(1).基于XXX业务量的要求,评估XXX管理平台是否能满足性能要求(2).进行配置测试,找到相对合理的测试(3).对XXX进行定容定量,提供规划参考(4).验证系统的稳定性,验证系统的容错能力(5).测试并找到系统可能存在的性能问题,分析系统瓶颈采用JMeter来模拟用户请求,针对测试目标会进行多轮测试第一轮在测试过程中尝试多种不同的配置进行压测,优化系统参数的配置,找出可能存在的性能问题第二轮进行定容定量的测试,为系统扩展提供参考,同时也回归上一轮修改的性能问题第三轮进行稳定性测试,验证系统容错能力测试开始前准备足够的存量业务数据,测试过程中也需要持续一段时间,确保结果的普遍性,可参考性;同时监控系统性能指标与中间件及数据库性能指标,确保能全面的对系统进行评估5.1测试执行策略测试执行策略如表A-11表A-11 测试执行策略5.2 测试监控策略测试监控主要用于以下两个方面(见表A-12)(1)业务性能指标:TPS与RT等(2)硬件性能指标:CPU,Mem,Disk等表A-12 监控策略6测试场景6.1前台开单测试场景配合上面的测试策略,设计如表A-13测试场景,其中并发数根据业务量进行换算所得,做为负载量参考,在测试执行过程中会根据TPS及ThinkTime进行并发用户数调整.说明:7测试准备(1)测试准备工作如下,包括负载工具,监控工具,文档管理工具等. (2)测试脚本及测试程序准备 (3)测试数据准备 (4)测试环境准备7.1测试工具准备测试准备见表A-14表A-14 测试准备7.2测试脚本及程序准备表A-15 测试脚本开发计划7.3测试数据准备表A-16 测试数据准备计划7.4测试环境准备表A-17硬件设置准备完毕必要软件准备完毕系统部署完毕环境验证完毕数据准备Zabbix安装8测试组织架构测试组织架构图B-1人员安排表A-18角色职责时间安排制定测试计划,完成人员调配协调项目整体资源,完成测试计划,以及性能测试任务,发现性能问题协助测试完成数据库数据插入,包括xxx,人员等数据插入,要保证数据的唯一性,可靠性,可识别性9项目风险受环境人力及自然因素影响,在测试过程中难免会出现一些影响测试执行过程的因素,风险及规避方法如表A-19。
《WEB项目开发》实训大纲doc
《WEB项目开发》实训大纲拟定:审定:日期:二〇一三年八月一、实训的性质、任务和基本要求《WEB项目开发》实训是计算机及相关专业学生的一项必修实践性教学环节。
该课程是计算机网络基础、网页设计与制作、java、Visual Basic,数据库原理与应用等课程的后继课程,是计算机相关专业应用前面所学知识与技能的一门综合应用课。
基本任务是培养学生较好地掌握WEB项目开发技术,提高学生编写程序解决问题的能力。
通过实训应使学生达到以下基本要求:(1)熟悉并掌握WEB网站开发流程(2)熟悉并掌握静态网页制作技术(3)熟悉并掌握动态网站搭建相关技术(4)能够将前期学习的语言开发技术和数据库技术结合使用,能够按照要求开发相应的动态网站二、实训内容要求每个学生对所选系统的业务规则和实际情况进行分析,完成该课程设计课题的网站需求分析、网站功能规划、网站数据库设计、页面设计、代码的编写及调试整个开四、成绩考核⑴实训课程设计考核方式采用考勤、过程式和报告相结合方式。
根据程序、报告和《WEB项目开发》实训大纲⑵考勤和成绩相结合:◇凡是无故旷课1次或2次迟到、早退者不能评定优等级;◇凡是无故旷课2次或3次迟到、早退者不能评定优秀和良好等级;◇凡是无故旷课3次或4次迟到、早退者该次实训综合成绩不及格;◇未按要求、不能按时完成作业者,该次实训综合成绩不及格;◇与他人作业雷同或者未交实训报告者实训综合成绩不及格。
五、几点说明1.要求进行实训前,已经学习过C#或者程序设计、数据库开发技术和网页制作等课程。
2.实训教师最少准备多个的静态网站和动态网站的题目供学生选择。
学生可自报题目,但不能和他人重复,自报题目时间由指导教师规定,自报题目需经指导老师审核后方可进行设计;题目选定后,课程设计期间任何人不能以任何理由进行更改。
3.实训结束后学生上交的资料由以下三部分组成:WEB项目开发源代码、WEB项目开发报告和实训总结,三者缺一不可。
web应用性能测试实践
经验
资源消耗
– 时间
cpu,disk io速率,network速率
– 空间
mem大小
瓶颈定位
可考虑因素
– Load情况 – Cpu占用 – Mem占用 – Disk io占用 – 网络流量
参考资料
优化思路
原理
– 时间换空间 – 空间换时间
方法
– 代码优化,提高cpu利用率 – 缩减数据使用量 – 减少io次数
Q&A
分类实现
基准测试
– 按pv设定模拟访问量
压力测试
– 按高峰与系统极限
对压力测试持续长时间 – 满足24*7服务
性能bug
多线程安全
– 并发功能错误
死锁
– 响应大幅度延迟
内存泄露
– 长时间运行内存溢出
采集的数据
响应
– 响应时间 – 每秒事务数
纲要
一、引入一些Web性能知识 二、性能测试的实现 三、说说性能bug 四、性能结果 五、谈谈经验
Web性能
Web模型:
– 通常有多快? – 人多了有多慢? – 发了新项目变慢还是变快? – 哪里慢? – 怎么变快?
超市模型
目标驱动的分类
基准测试 压力测试 对比测试 瓶颈定位 性能调优
资源
– Cpu,mem,disk io,network
规则
用户最敏感的是响应时间 衡量网站处理能力的是每秒事务数 资源消耗是工程师关注的成本 设计决定
经验
响应时间
– 功能实现方式 – Web server:100ms~1000ms – Search server:1~100ms
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.1.2性能测试需求提取复习了一些常见的理论概念后,我们开始性能测试需求的提取。
这个过程是非常重要的,往往测试失败,就是因为在这个过程中不知道如何得到确切的性能指标,而导致测试无法正常开展。
性能测试需求提取一般的流程如图5- 1所示。
图5- 1性能测试需求提取流程分析提取指标在用户需求规格说明书中,会给出系统的功能、界面与性能的要求。
规范的需求规格说明书都会给出明确的性能指标,比如单位时间内访问量要达到多少、业务响应时间不超过多少、业务成功率不低于多少、硬件资源耗用要在一个合理的范围中,这些指标都会以可量化的数据进行说明。
如果,实际项目并没有这些正规的文档时,项目经理部署测试任务给测试组长时,一般就会说明是否要对项目的哪些业务模块进行性能测试,以及测试的要求是什么的。
最麻烦的就是项目经理或者客户要求给出一个测试部门认为可以的数据,这样非常难做的。
可是“甲方”往往都是提要求的,“乙方”只能“无条件”接受!表5- 1需求规格说明书中的性能要求表5- 1给出的指标非常明确,在测试过程中,我们只需收集用户登录模块的响应时间、登录成功率、并发数、CPU使用率、内存使用率的数据,然后与表5- 1的指标进行比较即可,通过的,就认为达到了客户要求的性能,未达到就分析原因,并给出测试报告及解决建议。
大多数是没有明确的需求,需要我们自己根据各种资料、使用各种方法去采集测试指标。
以OA系统为例,假设《OA系统需求规格说明书》中并未指明系统的性能测试要求,需要测试工程师自己分析被测系统及采集性能衡量指标。
分析OA系统的结构,所有功能中仅有考勤模块可能是被测系统最终用户经常使用的业务点,那么我们的重点应该在放在该模块上。
一般我们可以从下面三个方面来确定性能测试点:第一、用户常用的功能。
常用的功能一旦性能无法满足,比如登录功能,从输入用户名与密码点击登录按钮到显示成功登录信息,花了5分钟,这样的速度是人无法忍受的。
而对于用户不常用的,比如年度报表汇总功能,三个季度甚至是一年才使用,等个10分钟也是正常的,这些是跟用户的主观感受相关的,得根据实际情况区分。
第二、系统业务逻辑复杂,数据流转频繁的功能。
这些地方最终用户可能看不到、用不到,但在系统是个关键点,没有它其他功能就不能正常工作,即使用户未提出做性能测试,作为测试部门也应该对这些地方进行性能测试,以保证他们能够正常工作。
第三、与外部系统的接口处。
有时候本系统需要使用其他系统的组件。
我做过的一个项目,B/S结构的企业信息管理系统,其用户管理模块中的用户数据就是使用早期C/S结构的ERP系统。
前一个使用Oracle数据,后一个是用Sybase数据,设定了每三个小时更新一下用户信息,以保证两个系统用户信息是一致的。
这样的功能,也是应该做测试的,特别是涉及到多系统的。
综合考虑,与考勤模块相关的是登录模块,因为登录是考勤的前置条件,所以在实际的测试中不仅要测试考勤的,还应该考察登录模块的性能表现,尽管这不是用户要求的。
OA系统是一个面向广大企业用户的办公自动化系统。
根据大多数公司的作息安排,早上九点基本是公司的上班时间。
那么根据实际业务分析,早上8:40到9:10可能是OA系统登录的高峰期。
因为很多人集中在这个时候达到公司进行考勤业务操作。
这个时候,就可以确定系统测试的一个时间段了。
接下来,需要调查一般会有多少人使用OA系统,这个数据比较难,应该公司的规模不一样,人数也就不一样。
既然是面向公众,那么就可以由开发工程师给出一个参考值,比如开发工程师说可以支持2000 人同时使用,那么我们就将使用系统的人数定为2000人。
既然说是2000人同时使用,我们可以理解为2000人在8:40到9:10这30分钟的时间里都要完成登录、考勤操作,并且不能有失败的业务。
也就是说业务的成功率要求在100%。
这样一来,到目前为止,得到了下面几个数据:1、OA系统使用高峰期为30分钟;2、并发使用人数为2000;3、登录、考勤成功率100%。
接着分析,在满足功能的同时,还需要考虑操作的响应时间。
很多公司都有迟到处罚制度,我原来的公司迟到一分钟扣五块钱,有的公司甚至更狠。
所以,如果应为页面反映慢而导致迟到,会“冤死”一批人,这样的问题绝对不能出现。
那么响应时间为多少算正常呢?说实话,这样的问题本身就是有问题的,何谓快,何谓慢?都是主观判断,你心急的时候觉得它慢,不急的时候觉得它快,所以没有一个定论,按照业内一个经验值,就是2、5、8或者3、5区分。
2秒或者3秒的功能结果响应时间是非常理想,5秒就有点让人觉得不爽了,而8秒,甚至更高很可能导致用户放弃操作,或者再次发起第二次请求。
这样的经验值在实际测试中对我们确定响应时间有很高的参考价值,当然响应时间还应该根据业务类型定,而不能仅从用户的感官考虑。
我们这里就采用常规的3秒为目标,也就是说OA系统处理登录、考勤业务的服务器响应时间不超过3秒。
除了软件的要求外,还应该对硬件资源进行监控,比如应用服务器的CPU使用率、内存使用率、带宽情况、Web服务器的资源使用情况等等,那么如果用户未提出要求,我们就按照常识走,CPU的使用率不超过75%,内存使用率不超过70%,其他指标这里就不列出了。
之所以选择这两数值,是因为他们具有代表性。
CPU的使用率超过75%可以说是繁忙,如果持续在90%甚至更高,很可能导致死机、机器响应超级慢等问题。
如果过低也不好,说明CPU比较空闲,可能存在资源浪费的问题。
对于内存存在同样的问题。
通过上面的分析,最终采集得到本次测试的性能参考指标如表5- 2所示:表5- 2 OA系统性能参考指标得出本次测试的性能参考指标后,我们就可以进行测试模型的建立了。
建立业务模型得到性能测试参考指标后,再次分析OA系统的实际使用情况,我们可以进行测试模型的建立,也就是建模。
所谓建模,就是建立用户业务模型。
建模是性能测试的基础。
只有建立合理有效的业务模型,才能模拟出真实的系统使用情况,才能找到今后可能发生的缺陷,所以建立恰当的业务模型是我们性能测试成功与否的关键。
那如何建立用户业务模型呢?根据上面的测试要求,我们需要测试OA系统登录与考勤两个模块的性能。
这两个模块的使用方法是什么样的?用户又是怎么使用的?相对其他的业务系统而言,这里的功能比较简单了。
登录功能很常见,输入用户名与密码,点击登录按钮即可完成登录操作。
登录成功后,直接进入考勤页面,点击考勤按钮,即可完成考勤操作。
所以,不需做太多的分析就能弄清楚这个过程。
如果用流程图表示,则可表示为图5- 2。
图5- 2 OA系统考勤流程图建立实际的业务模型如表5- 3所示:表5- 3 OA系统考勤业务模型经过分析测试要求与建立业务模型两步,基本上已经确定了本次测试的内容。
大多数项目的性能测试分析都可以使用这样的方法。
在分析与建模过程中,最重要的是要弄清楚当前测试的重点是什么,对应的业务流程是什么,就像我们做功能测试一样的,性能测试也需要在客户的实际应用基础上开展,否则脱离实际的测试是无效的。
评审确定指标前面的两步仅是测试工程师的分析确定过程,并没有取得项目组的审核,要知道,在一个软件生产过程中,评审在每一个过程都应该存在。
得到测试指标与模型后,就需要编写对应的性能测试计划或者性能测试方案,并提交项目进行审批。
如果项目组没有这个要求,测试工程师也需告知项目经理、开发组长与测试组长,并要求得到反馈。
我曾做过的一个移动项目,方案改了三次,局方经理才同意,尽管他们并没有提出什么要求,就是认为不妥,此时我们就必须不断调整,他不同意,我们就不能开展工作。
所以,有时候这个评审可能是个形式,但也得做。
一般在这个阶段会生成性能测试计划或者性能测试方案。
后期的性能测试工作就按照这些文档开展。
5.1.3性能测试用例设计经过性能测试需求提取阶段的努力,测试目的明确了,就需要设计详细的测试用例了。
这个阶段主要考虑的是如何实现性能测试模型。
与功能测试用例设计不同的是,性能测试用例一般仅考虑正常的业务流程,而不会去检查异常流程,但其中的约束条件仍是需要注意的。
比如有些在线投票系统是不允许一个IP 投多次票的,在性能测试过程中特别需要注意这方面的问题。
比如同一个IP仅允许一个用户登录、一个用户仅能操作一次、不允许出现同样的数据,业务操作中存在临时会话ID等等问题。
从功能角度考虑,用户使用OA系统中的考勤功能,只能进行一次到达单位的签到,如果再次点击考勤按钮,则系统不允许提交,给予提示“不能重复考勤”。
这样,在测试过程中,就需要使用不同的用户名。
仔细分析测试数据的约束关系,找出其中容易出问题的地方,然后想办法解决它。
经过分析,了解到考勤功能不允许重复考勤,也就意味着一个用户只能进行一次考勤操作。
除此之外,还需要考虑同一个IP允不允许多个账号登录,在前面的功能测试阶段我们得知,OA系统是允许这样的操作的,那么在测试过程中就不需要进行IP欺骗的操作了。
除此之外,似乎OA系统没有其他的限制了。
再次强调,在设计性能测试用例的时候,一定要弄清楚测试点是否存在约束条件,一般可由该测试点对应的功能测试用例得到。
综上所有,设计出本次性能测试的用例如表5- 4所示:表5- 4 OA系统性能测试用例至此,性能测试需求分析与测试用例设计已经完成,下面就可以利用测试工具进行实际的测试了。
这里使用的是HP公司的LoadRunner 8.1英文版。
LoadRunner是一款专门用于性能测试的测试工具。
该工具可以轻松的模拟百万用户并发使用软件系统的情景,同时可利用场景执行功能模拟真实的业务,场景执行完毕后,LoadRunner还提供了强大的测试结果数据分析功能,以便于测试工程师分析系统中所存在的性能问题。