懒羊羊softwaretesting

导航

随笔分类 -  性能测试

loadrunner json参数化
摘要:因为json格式有{},所以LR参数化时如果也用默认的{}的话,会冲突,这样脚本运行时就无法识别,导致不能正确的读取参数化文件里的内容,此时把参数化的{}改成其他符号即可,比如<> 阅读全文

posted @ 2018-05-06 20:29 懒羊羊呐 阅读(182) 评论(0) 推荐(0)

loadrunner json中文无法识别问题
摘要:http://blog.sina.com.cn/s/blog_6ff7a3b50101awmy.html 阅读全文

posted @ 2018-05-02 18:13 懒羊羊呐 阅读(198) 评论(0) 推荐(0)

mysql慢查询
摘要:https://jingyan.baidu.com/album/454316ab07e522f7a7c03a2c.html?picindex=1 set global slow_query_log_file='/var/lib/mysql/test-05-02-slow.log'; 阅读全文

posted @ 2018-05-02 15:41 懒羊羊呐 阅读(119) 评论(0) 推荐(0)

loadrunner请求json数据参数化问题
摘要:http://blog.sina.com.cn/s/blog_62079f620102vvx3.html 阅读全文

posted @ 2018-05-02 15:38 懒羊羊呐 阅读(306) 评论(0) 推荐(0)

delete请求
摘要:Action(){ int HttpRetCode; //定义一个变量,用于接收HTTP返回的状态码 web_add_header("Session-Id", "2e254244-93e3-416b-a3b7-1630b238a4d5"); //请求头 lr_start_transaction("删 阅读全文

posted @ 2018-04-19 15:01 懒羊羊呐 阅读(479) 评论(0) 推荐(0)

put请求
摘要:Action(){ int HttpRetCode; //定义一个变量,用于接收HTTP返回的状态码 web_add_header("Session-Id", "a3ffa6fd-a767-4eec-bd2f-7bc160a71e41"); //请求头 web_add_header("Content 阅读全文

posted @ 2018-04-19 15:00 懒羊羊呐 阅读(495) 评论(0) 推荐(0)

post请求
摘要:Action() { int HttpRetCode; //定义一个变量,用于接收HTTP返回的状态码 web_add_header("Session-Id", "2b694fd3-f30b-49a0-9445-8ec840460b1a"); //请求头 //web_add_header("Cont 阅读全文

posted @ 2018-04-19 14:59 懒羊羊呐 阅读(168) 评论(0) 推荐(0)

get请求
摘要:Action(){ int HttpRetCode; //定义一个变量,用于接收HTTP返回的状态码 //web_add_header("Session-Id", "2e254244-93e3-416b-a3b7-1630b238a4d5"); //请求头 lr_start_transaction( 阅读全文

posted @ 2018-04-19 14:56 懒羊羊呐 阅读(130) 评论(0) 推荐(0)

loadrunner接口测试方法
摘要:web_custom_request:适用于Get和POST请求通用, web_submit_data:只能用于POST请求, web_submit_form:只能用于Get请求。 Action() { int HttpRetCode; //定义一个变量,用于接收HTTP返回的状态码 web_sub 阅读全文

posted @ 2018-04-15 23:09 懒羊羊呐 阅读(174) 评论(0) 推荐(0)

gc图波峰波谷一直上升问题
摘要:垃圾回收曲线,波峰和波谷一直上升。正常是波峰波谷在同一水平线上,可以想象如果程序继续运行下去,老年代内存回收后也不断上升,当达到老年代满了的时候,就会报内存溢出错误。 用jmap -histo pid去看堆内存的使用情况,或者用jmap -dump去dump堆内存,然后用MAT去分析dump下来的内 阅读全文

posted @ 2018-03-27 16:09 懒羊羊呐 阅读(303) 评论(0) 推荐(0)

loadrunner http协议性能测试脚本编写
摘要:性能测试其实测的就是接口的性能,不管是用工具录制还是自己写,都是围绕接口的,录制也是把接口录制下来而已,但是录制下来的脚本比较乱,会把很多相关的请求都录下来。 在这里我们手动写HTTP协议的get、post请求的接口 1.HTTP的GET请求 这里以访问百度为例,地址http://www.baidu 阅读全文

posted @ 2018-03-17 19:56 懒羊羊呐 阅读(463) 评论(1) 推荐(0)

Java垃圾回收理解
摘要:gc是垃圾回收,Java的垃圾回收分为年轻代回收和老年代回收,其中年轻代回收速度快,频率高,因为Java对象大多具有朝生夕灭的特性,Java对象都是new出来的,当new出很多对象的时候,年轻代很容易就满,满了就触发yong gc对没有引用指向的对象进行回收。但是会有一些对象连续被回收好几次之后还没 阅读全文

posted @ 2018-03-17 12:38 懒羊羊呐 阅读(164) 评论(0) 推荐(0)

线程死锁分析及定位方法
摘要:混合测试过程中,LR报超时错误。 分析:造成这种现象的原因有很多,可能是网络原因,但测试时用的是局域网,所以不可能是网络的问题。也可能是CPU使用过高导致服务器端负载过大,无法处理客户端的请求导致的,此时去检查应用服务器和数据库服务器的CPU,发现还没有达到60%,所以可以排除资源瓶颈问题(当时的测 阅读全文

posted @ 2018-03-17 10:54 懒羊羊呐 阅读(582) 评论(0) 推荐(0)

使用AWR报告诊断Oracle性能问题
摘要:在做单交易负载测试时,有的交易响应时间超出了指标值,在排除完测试环境等可能造成交易超时的原因后,去分析数据库问题。数据库用的是Oracle,对于Oracle数据库整体的性能问题, awr的报告是一个非常有用的诊断工具,于是采用Oracle自带的性能分析工具awr进行监控分析。 生成awr报告 1、 阅读全文

posted @ 2018-03-16 22:52 懒羊羊呐 阅读(364) 评论(0) 推荐(0)

性能测试关注点
摘要:开始性能测试前需要了解的内容: 1、 项目具体需求是什么,为什么要做性能测试?哪些交易需要做性能测试?哪些场景需要做性能测试? 2、 指标:响应时间在多少秒以内,支持多少并发数,每支交易的tps是多少,总tps多少,稳定性交易总量要达到多少,事务成功率要达到多少,交易波动范围是多少,稳定运行时长是多 阅读全文

posted @ 2018-03-16 22:31 懒羊羊呐 阅读(251) 评论(0) 推荐(0)

weblogic连接池过小导致TPS呈周期性跳坑现象
摘要:利用晚上时间跑个12小时稳定性,第二天发现TPS曲线图成了这个样子。 排查步骤: 1、观察TPS图发现,几乎每两个小时TPS掉一次坑,是周期性的,而且TPS有掉到0的现象。LR上也有失败的交易,猜想是TPS掉坑的时候交易才报错,因为之前测负载的时候并没有交易报错。 2、查看服务器日志,发现报连接池不 阅读全文

posted @ 2018-03-16 21:45 懒羊羊呐 阅读(471) 评论(0) 推荐(0)

基准测试和负载测试响应时间相差太大问题
摘要:做接口性能测试时,单用户时响应时间是50ms左右,而测10个用户并发时响应时间达到了260ms,虽然没有超出指标(300ms),但正常情况下单用户和10个用户并发时响应时间不应该相差那么大。 排查步骤: 1、查看是否有资源瓶颈 重新压测该接口,观察应用服务器、数据库服务器、压力机资源使用情况,发现使 阅读全文

posted @ 2018-03-16 21:42 懒羊羊呐 阅读(458) 评论(0) 推荐(0)

CPU使用率过高分析方法
摘要:项目过程中发现,应用服务器经常会出现CPU使用率较高的情况,需要定位出具体代码问题。 1、用top命令,根据CPU使用率排序,找出消耗cpu最高的进程 2、找出该进程下消耗CPU最高的线程(命令:top -Hp pid) 3、将该进程转换成16进制 4、用jstack去dump线程栈(命令:jsta 阅读全文

posted @ 2018-03-16 21:37 懒羊羊呐 阅读(312) 评论(0) 推荐(0)

堆内存溢出定位方法
摘要:最近做的稳定性测试,大概跑了2小时左右LR前端报请求超时、HTTP状态码为500错误,日志报java.lang.OutOfMemoryError:Java heap space错误,明显是堆内存溢出问题。 内存溢出原因:老年代满了就会自动触发fullgc进行垃圾回收,但是如果老年代里的对象回收不掉的 阅读全文

posted @ 2018-03-16 21:32 懒羊羊呐 阅读(1275) 评论(0) 推荐(0)