JMeter 实现Java请求步骤及原理

1.jar包

添加jar包依赖,注意和Jmeter的版本相同:

ApacheJMeter_core.jar,ApacheJMeter_java.jar

2.写Java请求

先继承 AbstractJavaSamplerClient,或者实现 JavaSamplerClient,

各方法和参数:

  • getDefaultParameters(),用来自定义参数的。
  • runTest(),请求主体。
  • Arguments类: 参数管理;
  • addAuguments() 用来添加参数。
  • JavaSamplerContext类: javaSampler的容器类,用来接收、处理用户传入的参数。
  • getParameter("参数名称") 用来获取指定的参数的值。
  • SampleResult类,请求类。

代码实现

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

public class HelloThree extends AbstractJavaSamplerClient {

  String uname="";

  //定义GUI界面的参数。

  @Override

  public Arguments getDefaultParameters() {

    Arguments params = new Arguments();

    params.addArgument("username", "Jerry");

    return params;

  }

  @Override

  public void setupTest(JavaSamplerContext context) {

    //获取参数

    uname = context.getParameter("username");

  }

  //主体执行部分。

  @Override

  public SampleResult runTest(JavaSamplerContext javaSamplerContext) {

    //new一个SampleResult对象,用来实现计时、结果回写等操作。

    SampleResult sr=new SampleResult();

    //初始化业务功能类。业务功能类就是真正用来实现请求发送的类。

    Request request=new Request();

    //业务操作

    try {

      //请求开始计时

      sr.sampleStart();

      //调用业务方法。

      String result=request.say(uname);

      //设置显示的请求数据,非必须。

      sr.setSamplerData("this is uname="+uname);

      //设置显示的响应数据,必须。

      sr.setResponseData(result,sr.TEXT);

      //设置请求的结束状态。

      sr.setSuccessful(true);

    } catch (Exception e) {

      sr.setResponseData("fail msg:"+e.getMessage(),sr.TEXT);

      sr.setSuccessful(false);

    } finally {

      //请求结束计时。

      sr.sampleEnd();

    }

    return sr;

  }

}

写好之后打成jar包;

3.jar包的存放

  • ·扩展的组件本身的jar包,放入Jmeter的lib\ext目录。
  • ·业务jar包及其所有的依赖包,放入Jmeter的lib目录。

然后重启jmeter,添加Java请求,就可以看到新增的Java请求了。

lib目录的冲突、管理:

业务本身需要用到的一些jar包,可能Jmeter的lib目录原始就存在。因此会存在以下问题:

  • ·jar包版本的冲突问题。
  • ·jar包数量太多,无法有效区分。

解决方法:在Jmeter.properties中设置plugin_dependency_path

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值