亲宝软件园·资讯

展开

jmater常见问题处理

李小瑞 人气:0

本文记录下jmeter使用过程中遇到的问题,方便随时查看

1、响应数据的中文编码是unicode,增加后置处理器bean shell转换成中文:

 

代码如下:

//获取响应代码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());

 

2、上传文件接口:

1)接口配置上,勾选form-data

 

 2)在files upload列添加-浏览上传文件,参数根据接口要求,mime类型写form-data

 

 

---后续待更新记录上来

 

 --充字数放一点性能的,后面再整理出去

测试场景:在既定的环境(包括动态扩展等策略)、既定的数据(包括场景执行中的数据变化)、既定的执行策略、既定的监控之下,执行性能脚本,同时观察系统各层级的性能状态参数变化,并实时判断分析场景是否符合预期。
1、基准性能场景:这里要做的是单交易的容量,为混合容量做准备(不要跟我说上几个线程跑三五遍脚本叫基准测试,在我看来,那只是场景执行之前的预执行,用来确定有没有基本的脚本和场景设计问题,不能称之为一个分类)。
2、容量性能场景:这一环节必然是最核心的性能执行部分。根据业务复杂度的不同,这部分的场景会设计出很多个。
3、稳定性性能场景:稳定性测试必然是性能场景的一个分类。只是现在在实际的项目中,稳定性测试基本没和生产一致过。在稳定性测试中,显然最核心的元素是时间(业务模型已经在容量场景中确定了),而时间的设置应该来自于运维周期,而不是来自于老板、产品和架构等这些人的心理安全感。
4、异常性能场景:要做异常性能场景,前提就是要有压力。在压力流量之下,模拟异常。这个异常的定义是很宽泛的,在下一篇文章里,我们再细说。

 

加载全部内容

相关教程
猜你喜欢
用户评论