# 【JMeter02】本地测试环境搭建与JMeter基本使用

By [陈缺](https://paragraph.com/@0x9d72719cdf32338ea2d95e570388d2eb3f805efb) · 2022-08-30

---

个人站点：[测试开发者 https://www.devtester.cn](https://www.devtester.cn) 上一篇：[【JMeter】Java与JMeter环境配置](https://mirror.xyz/0x9D72719CdF32338Ea2d95e570388D2eB3f805EfB/3-az06aTVqK1tBtg0TQCLkfbUOI4xCFXThvGcgSJwyE)

1\. 测试环境
========

1.1 测试项目
--------

测试项目使用的是开源项目新蜂商城，这里重点是Jmeter的基本使用，所以用的是基础版本，如有需要，请自行选择其他版本或者更换其他开源项目。 需要使用Maven，所以需要提前配置Maven环境与Mysql。Maven环境与Mysql安装配置可以参照其他优秀博客，此处省略，日后再补 项目地址: **github：** [https://github.com/newbee-ltd/newbee-mall](https://github.com/newbee-ltd/newbee-mall) **gitte：** [https://gitee.com/newbee-ltd/newbee-mall](https://gitee.com/newbee-ltd/newbee-mall) **api**文档地址：[http://47.99.134.126:28019/swagger-ui.html](http://47.99.134.126:28019/swagger-ui.html) 拉取或下载项目后，使用IDE选中pom文件导入Maven项目，初始用户名可以从数据库中获得，初始密码为123456

1.2 项目配置
--------

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/daab13ce033613337f2e6ed7cdf731e2c874d145bc3a45a6c83a14c6c469b695.png)

在这里插入图片描述

2\. Jmeter基本使用
==============

2.1 基本使用概览
----------

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/11d13eedc7c421e391450a982eca36d87a5dd052be64ce2141ae788b9d3d451c.png)

在这里插入图片描述

2.2 执行顺序
--------

a. 测试计划 测试计划勾选独立每个线程组,则会按照线程组的顺序执行线程组;如果未勾选则会按照字母顺序进行执行 b. 线程组(独立完成使用线程组,协作则添加测试片段)

> 测试片段是什么？应用在控制器上的一个特殊线程组，与线程组处于同一层级，必须与Include Controller或模块控制器一起使用才被执行。

c. 配置元件 d. 前置处理器 e. 定时器 f. 逻辑控制器 g. 取样器 h. 后置处理器 i. 断言 j. 监听器

2.3 创建测试计划
----------

打开Jmeter，默认会有测试计划，可根据需要更改测试计划名。 测试计划下也可以添加线程组，配置元件等，需要考虑其作用域，通常而言，添加的内容挂载在某一结点，其作用域就在某一结点

2.4 添加线程组
---------

右键测试计划，添加线程组。线程组用来模拟用户，一个线程就是一个用户。

2.5 添加HTTP请求默认值(缺省值)
--------------------

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/0734db0c227a6ebbb723031631f61af3efd41dbbfee783f217bdb89ec80a977d.png)

在这里插入图片描述

2.6 添加HTTP请求取样器
---------------

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/3e6d58b25f36b2b75921fad5257d44b8ee620feff1898b3c02e7a395f1bfc03c.png)

在这里插入图片描述

2.7 在HTTP取样器下添加断言
-----------------

示例包含两个断言，虽然都是响应断言，但一个是响应码断言，一个是业务断言。这也是断言所需包含的基本内容。

### 2.7.1 Apply to应用于：

（1）主样本和子样本 （2）仅主样本 （3）仅子样本 （4）用于指定变量的内容，需要提前设置变量，然后在这里输入

### 2.7.2 模式匹配规则

（1）包括：包括你指定的内容，支持正则匹配　支持对正则表达式提取器引用名称做判断 （2）匹配：响应内容要完全匹配内容，不区分大小写 （3）相等：完全相等，区分大小写 （4）字符串：响应内容包括匹配内容即可匹配模式 （5）否：响应内容不包括，不等于等否定 （6）或者：响应内容测试模式有多个时，一个成立则认为断言通过。不勾选时意味着“并且”，即需要全部成立才算断言通过

### 2.7.3 响应码断言

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/e1b07bf4d667aa58597f94b28cdd98b30539f37525728c6b82d7d765707d099e.png)

在这里插入图片描述

### 2.7.4 业务断言

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/2b7b12cc8235ad87103405fb3e224bed731e8a5b75252a7514bb1d710eb6634d.png)

在这里插入图片描述

2.8 线程组下添加断言结果
--------------

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/8a1a45fe423c4db22ced15b9eb8c86534d8cc150535a52646e236e26ed228433.png)

在这里插入图片描述

2.9 线程组下添加察看结果树
---------------

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/4dd9b1fd04dd5d64f62ac5ba051968ae438430adc11e6e77db104c3b2402f0d6.png)

在这里插入图片描述

![在这里插入图片描述](https://storage.googleapis.com/papyrus_images/2cb1de63c4e9a7d45c9121d264965755c1862507c630dde941e8e4ad74a48379.png)

在这里插入图片描述

---

*Originally published on [陈缺](https://paragraph.com/@0x9d72719cdf32338ea2d95e570388d2eb3f805efb/jmeter02-jmeter)*
