51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 747|回复: 0
打印 上一主题 下一主题

Jmeter模块化你知道多少?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-9-15 16:59:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 草帽路飞UU 于 2022-9-16 17:02 编辑

测试片段的创建


首先我们需要了解测试片段是什么,测试片段的作用是什么?

当我们在测试计划下创建一个测试片段时,测试片段默认是被禁用的。这其实就是jmeter在告诉我们,测试片段本身是不可以直接运行的。

我们可以把测试片段理解成一个不能直接执行的线程组,他的目的是封装常用的方法,用于别的线程组使用。


接下来举例说明测试片段的创建
我们需要封装一个登录接口。

1、测试计划-新建-测试片段

2、在测试片段中创建一个登录的HTTP请求。我们在这个HTTP请求中创建前置和后置处理器,方便在其他地方调用测试片段时,获取其返回值。

取样器:



后置处理器:




测试片段的基本使用


说到测试片段的使用,就离不开include控制器和模块控制器,我们这里将简单学习一下这两个控制器的使用


一、include控制器--基本使用


include控制器一般也是与测试片段一起使用,用于在一个线程组中,导入一个测试片段。

1、通过include导入测试片段,这里需要启用测试片段


2、运行当前线程组


运行成功

二、模块控制器 -- 基本使用

模块控制器,我们可以把它理解为python中的import,我们通过模块控制器,import不同的测试片段,从而达到不同的效果。

这里我们先介绍一下模块控制器使用测试片段的方法.

模块控制器与include控制器的不同在于,include控制器是直接引入外部文件中的测试片段。模块控制器引入的是当前测试计划中定义的测试片段,可以通过include控制器间接引入外部文件中的测试片段。


如图所示,模块控制器,可以选择一个测试片段(无法多选),选择以后,点击运行按钮,即可运行当前的这个测试片段。


测试片段--实现模块化


上面我们已经大致了解了测试片段的创建及使用。那么怎么才能通过测试片段实现模块化场景呢?

以下通过示例进行讲解。

场景

第一个是登录场景,分为普通用户登录和VIP用户登录。接下来是根据不同的用户,查看不同的页面内容。

1、编写普通用户的登录接口


后置处理器:


2、编写VIP用户的登录接口

后置处理器:


3、编写调用它们的线程组

模块控制器


IF控制器1


取样器1


IF控制器2


取样器2


当模块控制器选择普通用户登录时:


选择VIP用户登录时:


模块化思想


根据上面的例子,可以总结:

include控制器:

我们可以把一些常用的方法,封装成测试片段。我们可以把它当作python的xxxUtil.py。当需要使用时,通过include控制器导入。

模块控制器:

我们可以把测试计划当作为class,模块控制器是数据驱动,根据数据驱动的不同,执行不同的操作。

在工作中,我们也可以通过测试片段,把一个任务分解给多个人做,只需定义好共用变量,便能够实现多人合作。






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-13 04:23 , Processed in 0.072059 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表