jmeter使用笔记

jmeter使用笔记

生成测试报告(类似LR的测试报告)

jmeter.bat -n -t 线程组.jmx -l csvlog.log -e -o Report



引用jar包

将自己开发的java文件生成jar包引用到jmeter中可以实现jmeter无法实现的一些功能,例如加密等

方法:

1、较为规范的方法:将jar包文件放入jmeter的解压目录下的lib/ext下,之后在jmeter的GUI界面中的测试计划选项中测试计划,在测试计划中最下方的library中加入自己要用的jar包,之后再脚本中引入需要使用的jar包比如:

import xxxx

xxxx.xxx.xxx(和java中调用方法的用法一致)

2、比较随意的方法:将jar包随意放置位置,使用方法与上面一致。



BeanShell的使用

在前置选择器中选择beanshell,加入该选项,其中语法与java一致,传递参数使用vars.put("名称",名称)、获取参数使用vars.get("名称",名称)

注:使用java传递参数是,参数需要进行URL编码

转换Unicode编码

//获取响应代码Unicode编码的

        String s2=new String(prev.getResponseData(),"UTF-8");

//---------------一下步骤为转码过程---------------

        char aChar;

        int len= s2.length();

        StringBuffer outBuffer=new StringBuffer(len);

        for(int x =0; x <len;){

            aChar= s2.charAt(x++);

            if(aChar=='\\'){

                aChar= s2.charAt(x++);

                if(aChar=='u'){

                    int value =0;

                    for(int i=0;i<4;i++){

                        aChar= s2.charAt(x++);

                        switch(aChar){

                            case'0':

                            case'1':

                            case'2':

                            case'3':

                            case'4':

                            case'5':

                            case'6':

                            case'7':

                            case'8':

                            case'9':

                                value=(value <<4)+aChar-'0';

                                break;

                            case'a':

                            case'b':

                            case'c':

                            case'd':

                            case'e':

                            case'f':

                                value=(value <<4)+10+aChar-'a';

                                break;

                            case'A':

                            case'B':

                            case'C':

                            case'D':

                            case'E':

                            case'F':

                                value=(value <<4)+10+aChar-'A';

                                break;

                            default:

                                throw new IllegalArgumentException(

                                        "Malformed  \\uxxxx  encoding.");}}

                    outBuffer.append((char) value);}else{

                    if(aChar=='t')

                        aChar='\t';

                    else if(aChar=='r')

                    aChar='\r';

                    else if(aChar=='n')

                    aChar='\n';

                    else if(aChar=='f')

                    aChar='\f';

                    outBuffer.append(aChar);}}else

                outBuffer.append(aChar);}

//-----------------以上内容为转码过程---------------------------

//将转成中文的响应结果在查看结果树中显示

        prev.setResponseData(outBuffer.toString());

如何设置固定QPS

添加组件Constant Throughput Timer

参数说明:Target throughput 设置每分钟可以达到的吞吐量,注(以分钟为单位)

calculate Throghput based on  作用域(一般选择 all active threads)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 引言 这估计是目前国内能找到的相对比较全面的JMeter自动化测试介绍了吧。希望能给予您一点帮助。 1.1 J...
    __yanyan阅读 15,811评论 1 45
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,288评论 19 139
  • 回顾二零一六,感觉就像玩了一场未能通关的游戏,什么都好像过得去,但到后来怎样都没能让自己满意,不得不说这真是个破年...
    醉了君莫笑阅读 387评论 0 2
  • 她想给我买部电脑,真的很是感动,她对我好好。 好开心,可是却又害怕。除了我妈,没人对我那么好过,有种不知所措的感觉...
    meet_again阅读 221评论 2 0
  • 时间过得真快,参加写手圈连续写作训练营,不觉马上就一个月了,最后一次的作业,组长说大家来写份总结吧。 作为一个资深...
    李四儿如夜阅读 307评论 2 5