性能测试方面
深圳-雄少
犹豫止步只会麻木,敢于迈出才能向前,实践才是真理
展开
-
【docker 菜鸟学习之一】arthas webconsole方式监控 jvm进程的实操记录
一、宿主机上,查看docker容器ip和端口号,以及进入docker操作第一步:查看docker容器的虚拟ip和映射端口(如端口[3658]没有,需要将端口加入进去)命令:docker inspect 容器名称第二步:进入docker容器命令:docker exec -it 容器名称 /bin/bash二、在docker容器中下载相关组件包:第一步:下载wget telnetapt-get update && apt-get install -y wget telnet第二原创 2021-09-22 11:33:42 · 503 阅读 · 0 评论 -
【JMeter 菜鸟实操之七】beanshell获取HTTP响应值,并将json数组中某个参数值进行处理,存入变量中
请求的response的json串:{"Code":1000,"resultMsg":"查询成功","data":[{"id":"1","note_Type ":"2","name":"test"},{"id":"2","note_Type ":"3","Name":...原创 2021-01-16 14:54:19 · 1480 阅读 · 0 评论 -
【JMeter 菜鸟实操之六】beanshell中处理16进制字符方法收集(物联网常用)
//将int字符串转为16进制字符串String hex = Integer.toHexString(Integer.valueOf(“xxx”));//将Long字符串转为16进制字符串String hex = Long.toHexString(Long.valueOf(“xxx”));//将float转为16进制字符串String hex = Integer.toHexString(Float.floatToIntBits(10.00));//将含字母或符号的字符串转为16.原创 2020-12-28 19:09:06 · 2082 阅读 · 0 评论 -
【JMeter 菜鸟实操之五】请求body中文编码奇遇记
最近性能测试时,发现一个jmeter5.2.1以前从来没有遇到过的坑,就是在进行http发送post请求时,body中参数存在中文时,请求服务器成功,但请求的body却是乱码,导致请求响应返回值,不是预期值,而是空值,但是采用postman和其他第三方工具模拟,却可以获取预期值,于是我设定几个解决思路:1、是否header缺少关键信息(比如:Content-Type:application/json;charset=UTF-8),在对比抓包工具后,在header中添加了相关参数,依然不行 2、...原创 2020-07-20 18:09:29 · 695 阅读 · 0 评论 -
【web前端性能学习之二】selenium+dynatrace/yslow+showslow实现web自动化前端性能测试
相关安装包或资料地址:http://pan.baidu.com/s/1kVEE9rp 密码:cu0v原创 2019-11-03 21:38:54 · 299 阅读 · 0 评论 -
ab和LoadRunner的区别,及ab的运用方法
ab的全称是ApacheBench,是 Apache 附带的一个小工具,专门用于 HTTP Server 的benchmark testing,可以同时模拟多个并发请求。这个小工具在apache的bin目录下面,但是每次使用都要先跳到该目录下,为了能够直接在cmd下使用,可以讲ab.exe这个文件移到C:\WINDOWS\system32路径下,这样每次使用就很方便了。 loadrunne转载 2013-06-26 15:41:50 · 987 阅读 · 0 评论 -
LoadRunner工具的设置技巧问题
1、如何解决数据库查询结果过大,导致录制失败解决方法:在windows系统目录下,首先找到是否在该文件中存在“【SQLOracleinspector】”项,并查看是否已经存在“CmdSize=xxxxx”项,如果不存在,则在该文件中添加:【SQLOracleinspector】CmdSize=100000 2、如何突破Controller可用脚本50条限制解决方法:开始>程序>原创 2013-06-27 10:35:16 · 1128 阅读 · 0 评论 -
nmon监控linux方法
nmon监控linux资源方法步骤:1、查看linux版本:cat /etc/issue cat /proc/versionuname -a2、根据linux的版本信息下载对应的nmon版本http://www.ibm.com/developerworks/wikis/display/Wikiptype/nmon nmon for linuxhttp://nmo原创 2013-06-27 11:00:09 · 926 阅读 · 0 评论 -
Web服务器压力测试工具http_load、webbenchab、Siege使用教程
Web服务器压力测试工具http_load、webbenchab、Siege使用教程一、http_load程序非常小,解压后也不到100Khttp_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死。还可以测试HTTPS类的网站请求。下载地址:http://soft.vpse转载 2013-11-13 14:53:18 · 1115 阅读 · 0 评论 -
【LoadRunner】手写HTTP请求,关于multipart/form-data类型
手写HTTP请求,关于multipart/form-data类型的body(加密sql语句和xml)方法1:此方法已实践,但请求失败,在官网资料显示,可运用此方法请求,猜测此方法不适合我实践的过程,希望引用此方法的大神小心求证。 web_custom_request("process.ashx", "URL=http://{IP}/process.ashx?userid原创 2013-12-27 13:23:45 · 3506 阅读 · 0 评论 -
【LoadRunner】解决1个Vuser登录系统后,迭代1000次,每次迭代循环下14个代码的14笔单问题
解决1个Vuser登录系统后,循环下14笔不同代码的单问题,代码如下:Action(){ char A[][13]={"000001","000002","000003","000004","000005","000006","000007","000008","000009","000010","000011","000012","000013"}; int i;原创 2013-11-22 17:10:02 · 2416 阅读 · 0 评论 -
【LoadRunner】解决HTTP请求中传参的base64加密方法
base64加密 此方法是通过某大神提供的方法,并结合在某个项目中实践得出。测试背景:在开发及优化LR脚本时,发现web请求中参数的传参值涉及到了base64加密方法,于是在网上找到很多种方法,但经过一一实践验证,发现都是徒劳,最终找到了一个方法,由于当时急于解决脚本,未及时记录哪位大神的博客地址,故将自己的项目实践过程中操作编写出来,希望能帮助更多遇到此问题的朋友。参数原创 2013-06-27 10:05:20 · 1858 阅读 · 0 评论 -
【LoadRunner】同一用户同时通过FTP服务器下载文件问题
问题背景:从FTP服务器下载文件,脚本弄好了,回放没有报错。但是在controller并发时,执行30并发,最终只有5个Vuser并发可以通过,总是报错:logon session failed。脚本如下:Action(){unsigned long *ftp1=NULL; ftp_logon_ex(&ftp1,"FtpLogon", "URL=ftp://h原创 2013-06-27 13:51:37 · 1452 阅读 · 0 评论 -
【LoadRunner】URL编码和解码方法
问题:URL=http://www.baidu.com/s?wd=%E6%B5%B7%E6%B7%80%E9%BB%84%E5%BA%84"中要对%E6%B5%B7%E6%B7%80%E9%BB%84%E5%BA%84进行参数化,但是由“中国”进行URL编码过来的(原因:URL的传参值,中文是无法进行ASCII编码的),所以无法直接用中文参数化,由于LR提供了lr_convert_string_e原创 2013-06-27 10:32:01 · 3298 阅读 · 0 评论 -
【LoadRunner】查看脚本请求日志和服务器返回值方法
查看LoadRunner脚本请求日志和服务器返回值方法1、 查看所有请求日志和请求响应信息:采用LoadRunner工具Run-time settings或按键盘F4,选择LOG设置,选择Extended log->Data returned by server和Parameter substitution,就可以搞定,但是这里设置是记录所有请求的日志。详细介绍Extended lo原创 2013-09-05 16:42:57 · 6571 阅读 · 0 评论 -
【loadrunner】如何编写C函数方法
如何在loadrunner中写C函数以下方法是根据自身经验、同事经验、以及Q友交流中收集而来的:1、写在globals.h下比如:int i,i_last=0;int getStat(int rdb,char* str){int status;char *result;status=tcrdbstat(rdb);result = (char *)strstr原创 2013-06-27 09:21:37 · 1405 阅读 · 0 评论 -
【LoadRunner】对思考时间函数的参数值进行参数化
对思考时间函数的参数值进行参数化,如下:案例: 步骤1:先设置test参数值,且test值都为数字步骤2:lr_think_time(atoi(lr_eval_string("{test}")));原创 2013-12-27 16:57:26 · 1314 阅读 · 0 评论 -
【LoadRunner】解决脚本中字符型转浮点型或由浮点型转字符型
double atof( const char *string); //申明函数Action(){ float UpPrice1; float i=0.1; char* price1=(char*)calloc(100,sizeof(char)); //请求存储空间//Correlation comment - Do not change!Origina原创 2013-12-27 13:10:13 · 1913 阅读 · 0 评论 -
【LoadRunner】构建HTTP请求之web_sumbit_data与web_custom_request请求区别
LoadRunner 构建HTTP请求之web_sumbit_data与web_custom_request请求区别web_sumbit_data与web_custom_request请求区别:1、提交数据方式不一样: web_custom_request是以body提交数据,“Body=属性名称=属性值&属性名称=属性值&....”;而web_sumbit_data提交原创 2013-07-08 15:03:24 · 1519 阅读 · 1 评论 -
【LoadRunner】使用SiteScope监控mysql
LoadRunner使用SiteScope监控mysql SiteScope下载,安装 要想使用LoadRunner监测MySQL数据库的性能,LoadRunner没有提供直接监测 MySQL的功能,所以,我们需要借助sitescope监控,然后在LoadRunner显示sitescope监测结果,这样间接地监控MySQL转载 2013-06-27 13:06:12 · 1687 阅读 · 0 评论 -
【Loadrunner】解决上传附件请求问题
案例1:在上传其他参数正确的前提下,多次回放,无法将包上传成功,通过与开发协同定位,发现上传路径存在问题,经过多次论证,需将本地路径"D:\web.zip"正则表达式转为“D:\\web.zip”,才能上传成功 web_submit_data("SaveStudentFile", "Action=http://{IP}/UploadFile/SaveStudentFile",原创 2014-02-07 10:16:38 · 3490 阅读 · 0 评论 -
【Loadrunner】解决客户端生成和引用GUID的方法
方法2:1、将生成GUID方法放在新建的GUID.h文件中;2、把这个文件放入脚本保存处;3、在globals.h中增加函数头“#include "GUID.h"”;4、直接引用(备注:如果要将生成的GUID作为请求参数,必须先用lr_save_string函数转换成LoadRunner能识别的参数,否则无法使用)char* lr_guid_gen(char* paramName){原创 2014-02-07 10:24:56 · 1926 阅读 · 0 评论 -
【Loadrunner】解决如何实践中动态链运用接库DLL 的方法
问题背景:XXapi开发语言为c++,通信机制采用socket通信机制,采用Loadrunner中的socket录制模式虽然可以录制,但存在以下缺点: 由于必须取得返回内容和buffer的大小,Loadrunner会耗费较多时间进行检查,默认为10s,而由于该API目前处于调优中,虽然请求方法和参数一样,但数据的返回有可能动态变化进行传输(动态代表着数据大小有可能不原创 2014-02-21 17:15:08 · 1120 阅读 · 0 评论 -
【mysql】监控数据库和抓取慢查询的几种方法汇总
监控mysql情况,并抓取慢查询监控方法:采用第三方工具spotlight、MONyog、HP sitescope(注:spotlight需在数据库中安装MDA表)查看mysql的情况:show processlist;explain +sqlshow variables; 查看MySQL服务器配置信息; mysql的配置文件:my.ini show v原创 2013-06-27 14:06:17 · 2774 阅读 · 0 评论 -
【loadrunner】实践中浅析集合点和思考时间对TPS的影响
问题背景:使用Loadrunner加压的方式与开发使用开发的工具加压的方式,在1000并发的时候TPS获取的值差距非常大,并且Loadrunner加压的方式TPS无法递增。 实际原因:总体分析,猜想可能产生的原因:1、客户端发送请求慢(设置思考时间和迭代时间导致);2、程序处理能力;3、网络问题。 为了定位问题,先从这三方面出发,开始从最简单的问题排...原创 2014-02-21 16:33:55 · 3158 阅读 · 0 评论 -
【吐槽篇之经验<二>】SSH架构性能优化经验总结
说明:此优化基于下列平台技术和服务器等, Struts2.1.8 、Spring 3.0 、Hibernate3.0 ;Tomcat 6.0应用服务器; JDK 1.6 ; 连接池采用DBCP; ---------------------------------------------------------------------------------原创 2014-02-24 10:24:51 · 2317 阅读 · 0 评论 -
【吐槽篇之经验<一>】Spring框架中重定向并发失败的原因
问题背景:登录功能的实现是这样的:登录请求(POST)+跳转到另一个请求下载相应的页面(302),当并发请求的时候登录就出现失败。 解决方法: <beanname="verchicleAction" class="com.gtadata.vms.action.manager.VehicleAction"scope="Singleton">,默认设置为Singleton则不原创 2014-02-24 10:41:23 · 1234 阅读 · 0 评论 -
【吐槽篇之经验<三>】性能问题定位与调优测试总结
经历了几次xxx项目的性能测试后,系统中子业务的并发数总是无法得到提升,定位原因也一直无从下手,加上几次项目测试经验后,发现自身定位方式存在问题,以前总以为定位程序问题只要交出结果现象就万事大吉了,但结论告诉我,恰恰相反,提供的结果,开发依然无法定位到具体问题所在,于是学会以下定位问题的方法:1.1定位问题流程图:问题(1): 在 100 用户,在进入xxx页面 时,就报:原创 2014-02-24 11:08:03 · 1173 阅读 · 2 评论 -
【Python】实现性能测试工具方法
用python做测试实现高性能测试工具(1)—序 - 51Testing软件测试网-中国软件测试人的精神家园http://www.51testing.com/html/16/n-856016.html用python做测试实现高性能测试工具(2)—优化代码 - 51Testing软件测试网-中国软件测试人的精神家园http://www.51testing.com/html/23/n-856023转载 2014-03-11 08:34:18 · 1106 阅读 · 0 评论 -
【loadrunner】解决将某个脚本中.c文件移植到其他脚本文件中,无法执行,且报Error -- Unresolved symbol错误问题
解决复制XFZ_C2C_FBSP.c文件至其他脚本文件中,无法执行,报Error -- Unresolved symbol错误问题步骤1:将XFZ_C2C_FBSP.c文件先copy至运行的脚本文件中,且打开default.usp文件,找到[Profile Actions]并填入该文件名(如“[Profile Actions] Profile Actions name=vuser_init,原创 2014-04-29 12:54:51 · 2285 阅读 · 0 评论 -
【loadrunner】格式化字符串(通过strtok处理关联所获取服务器响应值中相连动态值)
LR格式化字符串(通过strtok处理关联所获取服务器响应值中相连动态值)原创 2013-08-19 14:41:14 · 1253 阅读 · 0 评论 -
【loadrunner】解决controller出现Abnormal termination, caused by mdrv process termination.大量错误,导致线程终止了请求
问题,LR对webservice的某个接口执行少量并发数的场景时,controller出现Abnormal termination, caused by mdrv process termination.大量错误,导致线程终止了请求,但服务器和负载机的资源都属正常。解决方法和思路:为了解决此问题,查阅了网上较多资料和官网解释,大同小异,也进行一一尝试,最终无果,但意外发现资料中,除了一些参数设原创 2014-04-29 12:57:55 · 6690 阅读 · 0 评论 -
【Oracle】Stackpack的使用
http://space.itpub.net/10881/viewspace-178074http://www.itpub.net/thread-744695-1-1.htmlhttp://blog.chinaunix.net/u/15472/showart_263875.htmlhttp://oracledba.javaeye.com/blog/462231原创 2014-05-14 11:40:20 · 608 阅读 · 0 评论 -
【loadrunner】获取所有关联值中最后一个值的方法汇总
问题:获取所有关联值中最后一个值 方法1:action(){ int m; char hetong1[10],hetong2[10]; web_reg_save_param_ex( "ParamName=DropDownList1",原创 2014-04-29 13:08:30 · 1215 阅读 · 0 评论 -
【Linux】Glances(Python)—Unix/Linux资源监控
Glances(Python)—Unix/Linux资源监控1、Glances介绍:Glances 可以为 Unix 和 Linux 性能专家提供监视和分析性能数据的功能,其中包括:CPU 使用率 内存使用情况 内核统计信息和运行队列信息 磁盘 I/O 速度、传输和读/写比率 文件系统中的可用空间 磁盘适配器 网络 I/O 速度、传输和读/写比率 页面空间和页面速度 消耗资原创 2013-06-27 11:38:08 · 1744 阅读 · 0 评论 -
【吐槽篇之经验<四>】如何运用Stand-Alone Profiler定位.NET代码级问题
运用Stand-Alone ProfilerStand-Alone Profiler是一款针对.NET程序或代码进行profiler的性能测试工具,具体操作步骤如下:1、安装VS _profiler,这里安装步骤省略 (注意:系统版本位数不同,安装的也不同)2、配置用户级的系统环境变量,把安装的路径设置在path中3、启动doc命令窗口,进入PeopleTrax.exe程序原创 2013-06-27 15:03:17 · 1412 阅读 · 0 评论 -
【Windows】问题:PC机无法共享服务器或pc机?
问题:PC机无法共享服务器或pc机? 解决方法: 在服务管理器内检查workstation和Computer Browser服务是否开启,如未开启,手工启动服务,如手工无法启动,需进入注册表中手工修改相关信息,步骤:1、菜单栏中点击"开始->运行",输入“regedit" 2、在注册表中找到地址:HKEY_LOCAL_MACHINE\System\原创 2013-07-08 14:09:43 · 769 阅读 · 0 评论 -
【Linux】查看Apache的并发请求数及其TCP连接状态
查看Apache的并发请求数及其TCP连接状态: Linux命令:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 返回结果示例: LAST_ACK 5 SYN_RECV 30 ESTABLISHED 1597 FIN_WAIT1 51 FIN_WAIT2 504原创 2013-06-27 11:02:44 · 891 阅读 · 0 评论 -
【Oracle】取得数据库全表扫描的语句(get_fullscan_table)
一:创建plan_table,数据库在默认情况下是没有创建此表的。 SQL> @?/rdbms/admin/utlxplan Table created. SQL> create public synonym plan_table for plan_table; Synonym created. SQL> grant all on plan_table转载 2014-07-01 08:40:03 · 656 阅读 · 0 评论 -
【SQLSERVER】排查CPU占用高的情况
学习地址:http://www.cnblogs.com/lyhabc/archive/2013/06/12/3133273.html#top原创 2014-07-01 08:48:12 · 437 阅读 · 0 评论