1、初步概念web
一、功能测试:测试产品的功能是否达到要求算法
二、性能测试:测试产品的性能是否达到要求。(性能的要求高于功能的要求)数据库
市场招聘的需求主要有两方面:编程
A、功能测试(手工、自动化)浏览器
B、性能测试(自能经过工具)待遇高于功能自动化,要求比功能高,好比须要查找产品慢的缘由:网络、服务器、中间件、数据库等层面问题服务器
2、性能测试的课程安排:网络
一、性能测试的基本概念 ---- 性能测试概念(1天)架构
对性能测试要求比较高的行业:通信、樱花、金融、证券、保险、百度、谷歌等系统并发
对性能要求比较低的:OA办公自动化app
二、性能测试的工具部分-- LoadRunner (全球至少一半以上的性能,使用LoadRunner)
1) LoadRunner的初级部分 -- 三大组件的简单运行
a、脚本生成器:调代码、脚本的地方
b、控制台:比如指挥部
c、结果分析器:好比,每隔三秒钟出一个结果,分析海量的结果,还能够继续的分析。
2) LoadRunner的高级部分 -- 三大组件逐个深刻掌握。
3)性能测试的高级部分 :性能测试工程中,遇到问题(瓶颈),如何查找、定性,进行性能调优。
LR HP官网下载 大概4G 免费 问题:用户数有限 单用户等
多个用户,须要买Licence须要注册
基本测试流程:
1)建立/编辑脚本
2)运行压力测试
3)分析测试结果
从奥运门票提及~
官方新闻以下:10月30日,北京奥组委想境内公众启动第二阶段奥运会门票预售。然而,为让更多的公众实现奥运梦想
的“先到先得,售完为止“的销售政策拔苗助长,公众纷纷抢在第一时间订票,导致票务官网压力激增,...... 致使系统瘫痪。
从上午9点开始售票到中午12点,3个小时内,票务网站被浏览次数达到2000万此。这雨他们提供的100万次/小时流量
相差甚远。
信息提取: 压力激增 ---- 瞬时压力:并发压力(性能测试)
系统瘫痪 ---- 宕机(down机了)
3个小时内,网站的流量次数达到2000万次
他们提供的100次/小时 他们:奥组委
甲方:奥组委 乙方:开发方 第三方:测试团队
报道~
从今天上午的状况看,公众购买门票的热情极其高涨。有些群众很早就来到中国银行排队等候;官方票务网站的浏览量在第一小时
就达到800万次,每秒钟从网上提交的门票申请超过20万张;票务呼叫中心热线从9点到10点的呼入量超过了200万人次。
信息提取: 浏览量第一小时 800万次 8000000/3600 = 2222次/秒
每秒钟从网上提交的门票申请超过20万张
浏览量(PV, Page View) :即页面访问量或点击量,用户每次刷新即被计算一次。
客户端 服务器
北京 ----------------> 上海 网络延迟0.2 每秒钟差了0.2 *20万张 = 4万张
上海 -----------------> 上海
项目经理常常安排次测试工程师进行下面的工做:
---- 测试系统的最大并发用户数
---- 测试系统8小时的最大业务吞吐量
---- 测试系统的稳定性和健壮性
---- 测试系统在数据达到100万条记录时的性能
---- 测试系统的核心事物相应时间是否知足用户的需求
3、性能测试的概念:
一、性能测试:模拟真实的生产环境,以各类不一样的压力(模拟大量用户)去测试被测系统,去”攻击“测试系统。同时
记录下被测系统中各台服务器的各类重要资源状况,包括cpu、内存、磁盘和网络等资源。
二、注意:性能测试以前要作好系统备份。
三、性能测试时首先看性能需求,若是没有需求,这时要根据与客户交流、被测系统的相关资料、以及性能测试工程师的
经验,去编写测试计划,进行测试。
四、负载测试和压力测试的区别:
(国内混用,国外有差异,笔试时须要注意)
1)负载测试是在正常的范围内测试(也是逐步加压)
2)压力测试能够在极端的范围内测试
负载测试:是经过逐步增长系统负载,测试系统性能的变化,最终肯定在知足性能指标的状况下,系统所能承受的最大负载量的测试。
压力测试 :逐步增长系统负载,测试系统性能的变化,并最终肯定在什么负载条件下系统性能处于失效状态,并以此来获的系统能提供的最大服务级别的测试。
举例:一座大桥,桥身上写最大载重车辆,不能超过60吨(负载测试)。可是在桥梁的内部资料里面规定最大载重车辆,不能超过70吨(压力测试)。
五、性能测试的背景课程:
1)数据库 (不夸张的说,60%-90%的性能问题和数据库有关)
2)操做系统(Unix、Linux)
3 )其余:网络协议、防火墙等知识.....
六、影响系统性能的主要因素:
硬件 - cpu、内存、硬盘、网卡及其余网络设备
操做系统
网络
中间件、web服务器
数据库服务器
客户端
编程语言、程序实现方法、算法
六、被测系统:
SUT(System Under Test)
AUT(Application Under Test)
EUT(Environment Under Test)
就是WebServer 和DB Server 两部分的统称。
进程和线程的区别:线程是由进程分出的,让更多的任务同时执行。
每一个虚拟用户就是一个线程,线程比较省资源
4、LoadRunner的工做原理:(录制--回放)和QTP相似
一、录制时,loadRunner记录下客户端和服务器两者之间的对话。
二、回放时,LoadRunner模拟真实的客户端向服务器发起请求,并按照脚本去验证服务器的应答。
说明:有时脚本录不下来,本身写脚本,发现测试经过了,但实际运行是服务器瘫了。
缘由:没有模拟真的是客户端相关,接收出现问题,致使失败。因此本身写脚本也要模拟真实的客户端。
LoadRunner的三大组件:(三个火枪手) QAload工具相似
1)虚拟用户脚本生成器(Virtual User Generator) VUG
功能:录制、编辑测试脚本
2)压力调度控制台(Controller)
功能:建立场景、运行场景、监控场景、收集测试数据
(场景:就是一个大型的配置文件)
3)压力结果分析器(Analysis)
功能:把收集到的测试数据以图表的形式展现出来,生成测试报告。
熟悉AUT:LR自带的一个B/S架构的系统
HP LoadRunner -> Sample ->Web -> Start Web Server 先启动服务器
HP LoadRunner ->Sample ->Web ->Hp WebTour打开应用
5、关注AUT,进行脚本的录制
Web tours 航班订票系统
用户名:jojo
密码:bean
注意:(浏览器指定使用IE)
一、使用LR以前,浏览器配置修改:Internet 选项 ->设置 ->选中“每次访问此页时检查”。
缘由:当脚本更新时,会及时查看到
二、拷贝AUT的网址,准备测试(测试时关闭被测网址网页)
http://127.0.0.1:1080/WebTours/
功能:
Flights 订票
Itinerary 看到订票路线 订单
Home 主界面
Sign Off 退出
录制脚本:使用VUG
HP LoadRunner ->Application ->HP Vurtual User Generator 打开
案例:录制用户的登录脚本
点击New图标 -> New Virtual User ->默认协议 ->Create 开始录制->填入基本信息点击ok ->自动打开浏览器,开始录制
填写基本信息:
Application Type 选择软件的架构:B/S(Interner application) 或 C/S(Win32 application)
Program to record 选择浏览器类型 -> 默认IE
URL Address: 被测系统的网址
Working directory: LR工做路径 默认
Record into Action: 录制脚本的位置 默认Action(vuser_init 初始化 Action vuser_end 结束)
关注小操做条(录制控制功能)
--> 输入jojo bean
--> 开始事物 名称login (插入事物) -> OK
--> Login 按钮 登录
--> 结束事物 login -> OK
--> 改成vuser_end模式,点击Sing Off 退出
--> 关闭浏览器 -> 点击蓝色的Stop键结束录制
注意:当LR 的脚本运行得出的result中所有为pass时,不必定证实脚本正确。由于lr只是在网络层面上验证了服务器收到了客户端发送的数据包
而且返回,可是,返回的应答中数据是否正确(应答页面是否正确)没有验证。