Day 1
性能测试:什么性能测试? 在一定负载下测试的响应时间,吞吐量,资源利用率是否满足性能需求 什么是负载:负载是评价一个强度的问题,例如:网页的性能是看网页能同时打开多少个table,点击量,登录情况,搜索情况等方面 响应时间:反应系统处理效率,从开始到完成某项任务所需的时间,响应时间会随着负载的增加而增加 吞吐量:反应系统处理能力,随着负载的增加吞吐量往往增加到一个峰值后逐渐下降,队列变长,类似服务器这样的饿端到端的系统,吞吐量往往依赖于某个部件的运行。系统中最慢的点的吞吐量决定了整个系统的吞吐量 在一次性能测试过程中网络上传输的数据量的总和,吞吐量/传输时间=吞吐率(通常用来指单位时间内网络上传输的数据量,也可以指单位时间内处理的客户端请求数量,是衡量网络性能的重要指标) TPS(Ttansaction per Second)每秒系统处理事务或事物的数量,是衡量系统处理能力的重要指标 资源利用率:反映系统能耗, 在线用户:活动用户/只要用户登录且没有退出,不做任何操作时,对服务器没有负载,HTTP请求登录完成后,服务器会自动断开连接,所以对服务器没有负载,占用内存,但不占连接数 并发用户:某一时刻同时访问系统的用户数 返回码:200 成功(建立连接,发请求,接受请求,断开) 3XX 重定向(服务器不做接受请求) 4XX 客户端错误 5XX内部服务器错误Referer:图片的请求包多出一条,referer 代表本请求在哪个页面发出的,防止‘盗链’用的自动化工具:做功能测试,记录对象的用户名或者密码的位置和操作过程,顺序指定性能测试工具:只要协议想通,关系协议内容,只关心传过来的用户名和密码LoadRunner性能测试解决方案 Virt User Generator:录制并回放单个进程 Controller:tell Generator how to work 程序,脚本,协议 1,找压力测试机 2,分配工作 3,定时间 4,脚本 5,调度(让压力机干活-->压力机运行脚本-->对被测系统产生负载-->被测系统内装的monitor-->把内容发回到controller-->DB-->Analysis)Day 2录制Resource=0 /*请求的内容是非资源文件,HTML 是资源文件,图片和CSS是资源,用1代表*/RecContentType=text/html /*内容类型*/Referer=http://127.0.0.1/zentao/project-create-3.html 请求Snapshot=t276.inf 快照,记录当时录制过程的内容,每个函数都有一个快照HTML-base与URL-base 的区别 区别 Html-base URL-base1,用户一次请求点击量区别 当附件的资源放在用户一次请求内 独立的,若干个URL2,Mode(资源文件没有moder) 非资源文件 HTML 非资源文件 HTTP3,文件大小 小 大4,点击量 无区别, 相等,快照里是真正录制下的东西,代码不完全,在所有内容都录制完成的前提下,对服务器的负载相同5, 已录制的元素的多少 少 多6, 选型 标准的B/S应用 非标准的B/S7,占用内存大小 大 小8,动态特性支持 Session的变化Recording Option设置Advanced ,Support Charset(UTF-8)防止乱码参数化:将固定的值,使用可变的值,{}中的值才是参数设置:Run-time settings->Log->extended log(Parameter substitution) /*在log中显示参数调用的值*/参数化取值:选择行, 三种:Sequential\Random\Unique 更新值:iteration\occurence\once, 每迭代一次,每出现一次组合:Sequential+iteration每次迭代都顺序取值,当迭代次数大于参数取值列表时,从头开始Sequential+occurence 参数每出现一次,都顺序取值,当迭代次数大于参数取值时,从头开始取值Sequential+once 参数从列表中取一次值,之后一直使用该值Random+iteration 每次迭代都随机取值,两个参数都输出相同的随机值Random+occurrence 参数每次出现都随机取值,两个参数都输出不同的随机值Random+once 随机取一次值。两个参数只取一个相同的随机值Day 4函数:nmon 监控系统性能 prm -rn监控Java的工具:yumL::inux中装东西