>[info]功能邏輯:wap官網(a.4399sy.com.hk),每個用戶登錄一次,發帖2次,發帖成功后注銷退出。
實戰開始前,先看一下我完整的jmeter用例結構

[TOC]
## 實戰步驟:
### 步驟一:添加測試計劃

### 步驟二:添加線程組

### 步驟三:添加HTTP Cookie 管理器
Cookie管理器會自動管理Cookie信息,在web測試中使用廣泛。在本實例中,如果沒有添加Cookie管理器,則登錄后,自動重定向后登錄狀態斷言失敗,發帖失敗。

### 步驟四:添加HTTP信息頭管理器
本元件進行請求header頭管理,本實例中,使用wap官網,需添加
User-Agent:Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.75 Mobile Safari/537.36
如果沒有添加UA,則會造成登錄成功后,頁面重定向到PC官網首頁,造成用戶登錄狀態不正確。

### 步驟五:添加HTTP請求默認值
本元件配置HTTP請求默認值,在其作用范圍內,其余的HTTP Sampler 如果沒有填寫覆蓋默認值,則可以直接使用默認值。
本實例的所有請求,均在同一個域名內:a.4399sy.com.hk

### 步驟六:添加參數化CSV數據配置
本元件從csv文件中讀取參數值到jmeter變量中。本實例將登錄用戶名和密碼存放在user.csv中,jmeter運行時將其迭代讀取到對應變量name,pwd 中,后續引用如${name},${pwd}
*Recycle on EOF?*:False 不重復迭代
*Stop thread on EOF?*:True csv迭代完成后,退出線程

其中,csv內容如下:
```cmd
001@126.com,123456
002@126.com,123456
```
### 步驟七:添加邏輯控制器:僅一次控制器
本元件,一個線程只執行一次,本實例用于控制一個用戶只登錄一次

### 步驟八:添加HTTP Sampler:發送登錄請求
本實例,發送請求參數做了參數化,引用步驟六中的變量${name},${pwd}

### 步驟九:添加斷言:響應斷言
登錄后,頁面重定向到官網首頁,html內容中顯示登錄用戶名,因此響應斷言如下:

### 步驟十:添加邏輯控制器:循環控制器
本元件在此例中,用于控制用戶登錄后,發帖2次

### 步驟十一:添加固定定時器
本元件,主要用于類似思考時間

### 步驟十二:添加HTTP Sampler:發帖留言請求
本Sampler中,引用步驟十三中的前置處理器中定義的變量${content} 和內置函數助手 ${__time(,)}

### 步驟十三:添加前置處理器:用戶參數
前置處理器,顧名思義,在Sampler 發送之前執行,本實例中,發帖時,用戶_1 和 用戶_2使用不同的發帖內容,并且發帖內容賦予給變量${content}

### 步驟十四:添加斷言:響應斷言
本實例,發帖成功后,返回json中,code=1,發帖失敗,則返回code=-1。所以發帖成功斷言如下:

### 步驟十五:添加后置處理器:正則表達式提取器
根據發帖響應,用正則表達式將code值提取出來,賦予變量${code_result},用于后續的if控制器。

### 步驟十六:添加邏輯控制器:IF控制器
本控制器,用于控制本實例中,如果發帖成功,則進行注銷操作。

### 步驟十七:添加HTTP Sampler:注銷請求

### 步驟十八:添加斷言:響應斷言
注銷成功后,頁面中不再記錄用戶狀態,斷言如下:

### 步驟十九:添加監聽器:查看結果樹
本元件,用于顯示請求與響應信息
### 步驟二十:添加Debug Sampler
本元件,用于jmeter調試,顯示jmeter變量值
## 各元件的運行順序
1. Configuration elements
2. Pre-Processors
3. Timers
4. Sampler
5. Post-Processors (unless SampleResult is null)
6. Assertions (unless SampleResult is null)
7. Listeners (unless SampleResult is null)
<hr style="margin-top:100px">
:-: 
***微信掃一掃,關注“python測試開發圈”,獲取更多測試開發分享!***
- 前言
- Fiddler01-抓包原理介紹與配置
- Fiddler02-菜單功能介紹
- Fiddler03-輕松玩轉Fiddler
- Fiddler04-進階使用FiddlerScript
- Fiddler05-使用FiddlerScript對微信文章互動量進行監控
- Postman01-介紹與安裝
- Postman02-HTTP請求與響應
- Postman03-Collection管理與運行
- Postman04 -變量詳解
- Postman05-初級腳本使用
- Postman06-實例小結篇
- JMeter01-JMeter就是這么簡單
- JMeter02-一個完整實戰包你學會使用JMeter
- JMeter03-在JMeter中使用BeanShell編程
- JMeter04-圖形化和非圖形化運行JMeter
- JMeter05-生成美觀的HTML測試報告
- JMeter06-JMeter+Jenkins實戰
- JMeter07-解析session與cookie