Jmeter测试Dubbo接口(原)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

1、新建一maven项目(我弄的是新建模块,其他任意也行,就弄个消费者,提供者,service)

Jmeter测试Dubbo接口(原)_第1张图片

2、新建一个myTest  maven模块

Jmeter测试Dubbo接口(原)_第2张图片

 

Jmeter测试Dubbo接口(原)_第3张图片

Jmeter测试Dubbo接口(原)_第4张图片

Jmeter测试Dubbo接口(原)_第5张图片

3、配置pom.xml文件(添加依赖、配置打包)


    com.alibaba
    dubbo
    2.5.3

    commons-logging
    commons-logging
    1.1.1

    junit
    junit
    3.8.1
    test

    org.javassist
    javassist
    3.18.1-GA

    log4j
    log4j
    1.2.15
    
        
            com.sun.jdmk
            jmxtools
        
        
            com.sun.jmx
            jmxri
        
        
            jms
            javax.jms
        
        
            mail
            javax.mail
        
    

    org.springframework
    spring
    2.5.6.SEC03

    org.slf4j
    slf4j-api
    1.7.6

    org.slf4j
    slf4j-log4j12
    1.6.1

    org.apache.zookeeper
    zookeeper
    3.3.6
    pom

    com.101tec
    zkclient
    0.4

    org.apache.jmeter
    ApacheJMeter_core
    3.3

    org.apache.jmeter
    ApacheJMeter_java
    3.3

 

其中、涉及跟jmeter打交道的包为(必须):

org.apache.jmeter.ApachJMeter_core
org.apache.jmeter.ApachJMeter_java

 

以下为pom.xml构建打包代码:



    qgl_my_test_jar
    
        
            ${project.build.directory}/classes
            src/main/resources
            true
            
                **/*.xml
                **/*.properties
            
        
        
        
            ${project.build.directory}/classes/META-INF/spring
            src/main/resources/spring
            true
            
                spring-context.xml
            
        
    

    
        
            
            
                org.eclipse.m2e
                lifecycle-mapping
                1.0.0
                
                    
                        
                            
                                
                                    org.apache.maven.plugins
                                    maven-dependency-plugin
                                    [2.0,)
                                    
                                        copy-dependencies
                                    
                                
                                
                                    
                                
                            
                        
                    
                
            
        
    
    
        
        
            org.apache.maven.plugins
            maven-jar-plugin
            
                target/classes/
                
                    
                        com.alibaba.dubbo.container.Main
                        
                        false
                        true
                        lib/
                    
                    
                        .
                    
                
            
        
        
            org.apache.maven.plugins
            maven-dependency-plugin
            
                
                    copy-dependencies
                    package
                    
                        copy-dependencies
                    
                    
                        jar
                        jar

                        
                            ${project.build.directory}/lib
                        
                    
                
            
        
    

 

 

4、在myTest/src/main/resources、新建一个applicationProvider.xml

Jmeter测试Dubbo接口(原)_第6张图片

applicationProvider.xml内容如下:





    
    

    
    
    
    

 

5、编写消费者类:IMemberAccountBackgroundApi

a、IMemberAccountBackgroundApi类需要继承AbstractJavaSamplerClient()  //该类来自于pom.xml配置jmeter的依赖

b、编写方法:public SampleResult runTest(JavaSamplerContext args){

    //必须得这么写,不然打包后,放到jmeter那边去后,不会识别

    Jmeter测试Dubbo接口(原)_第7张图片

c、启动采样器和上下文

d、利用context.getBean("getxxxInfoByxx"),获取到xml中配置的id,然后new一个接口对象去接收

Jmeter测试Dubbo接口(原)_第8张图片

e、进入

IMemberAccountBackgroundApi,去找到对应的接口方法名称

比如我要测试通过ID进行数据查询的接口,如下:----------------------------------------------------------Jmeter测试Dubbo接口(原)_第9张图片

Jmeter测试Dubbo接口(原)_第10张图片

把返回的对象进行打印处理,

Jmeter测试Dubbo接口(原)_第11张图片

 

然后对返回的结果进行判空处理,如果不为空则设置jmeter的数据类型为text

设置success=true

f、在类中写一个main方法进行测试,测试OK,则打包放到Jmeter中

Jmeter测试Dubbo接口(原)_第12张图片

 

6、调试成功的话,此时可以进入打包阶段了

a、如何打包:点击insetall(打包前,需要先清除clean操作,防止脏数据)

Jmeter测试Dubbo接口(原)_第13张图片

b、未打包这前,是没有terget文件夹的,下图为打包前

Jmeter测试Dubbo接口(原)_第14张图片

c、打包成功后,详情如下,tree型结构会增加terget

Jmeter测试Dubbo接口(原)_第15张图片

7、将打好的包找到,并放到jmeter下的lib目标与ext目录

Jmeter测试Dubbo接口(原)_第16张图片

Jmeter测试Dubbo接口(原)_第17张图片

Jmeter测试Dubbo接口(原)_第18张图片

 

8、启动Jmeter

Jmeter测试Dubbo接口(原)_第19张图片

 

可参考:https://github.com/dubbo/jmeter-plugins-dubbo/wiki/%E7%94%A8%E6%88%B7%E6%8C%87%E5%8D%97

 

转载于:https://my.oschina.net/u/3222944/blog/1816634

你可能感兴趣的:(Jmeter测试Dubbo接口(原))