jmeter多用戶并發登錄教程

有時候為了模擬更真實的場景,在項目中需要多用戶登錄操作,大致參考如下

jmx腳本:百度網盤鏈接
提取碼:0000

一: 單用戶登錄

先使用1個用戶登錄(先把1個請求調試通過)

  1. 發送一個登錄請求,線程數:1,時間:1,循環次數:1
    在這里插入圖片描述
  2. 啟動后查看返回結果,查看返回登錄成功后 OK
    (為什么請求1次返回3個結果呢,這個項目對登錄接口做了重定向2次,既先使用get自動請求網站1次獲取sessionid)
    再通過HTTP Cookie管理器自動獲取到sessionid進行登錄

在這里插入圖片描述

  1. 設置多個線程數進行登錄(線程組設置-線程數:10,時間:1,循環次數:1),給登錄加一個斷言
    在這里插入圖片描述
    在這里插入圖片描述

  2. 執行后查看結果,有的請求會被擠下線,被擠出來的沒有對服務器造成任何壓力
    在這里插入圖片描述
    這里涉及到多點登錄限制------淺談一下多點登錄和單點登錄的區別
    多點登錄:同一賬號可以在不同終端同時登錄,同時收發信息
    多點登錄原則:多點登錄限制(禁止用戶多點在線):一個端同一個賬號只能登錄一個實例,例如一個賬號在網站端登錄后,后一個人使用這個賬號在網站端登錄,前一個人會被擠下去并會收到通知“你已在別處登錄…”
    單點登錄:指在同一帳號平臺下的多個應用系統中,用戶只需登錄一次,即可訪問所有相互信任的系統。簡而言之,多個系統,統一登陸。
    最簡單的單點登錄實現方式,用cookie作為媒介存放用戶憑證。 用戶登錄系統之后,會返回一個加密的cookie,當用戶訪問子應用的時候會帶上這個cookie,授權以解密cookie并進行校驗,校驗通過后即可登錄當前用戶。
    依豆瓣網站電影Top250為例:https://movie.douban.com/top250?start=
    豆瓣旗下有:讀書、音樂、同城、閱讀、FM等等
    簡單理解:就是如果登錄了豆瓣,如果還需要訪問子應用,就不需要再次使用賬號了,可以直接訪問

優化,單用戶請求過多會被擠下線,而且和想要的測試也不一樣,帳號提前在數據庫創建,然后使用CSV元件引如

二、多用戶登錄實現1
  1. 在當前線程組下添加CSV數據文件設置,文件名:你準備的txt帳號和密碼文件,文件編碼UTF-8,其他可默認
    在這里插入圖片描述
  2. 登錄接口引入CSV變量,然后線程組內的設置不變,繼續執行
    在這里插入圖片描述
  3. 查看多用戶請求結果,從斷言上看沒有報錯,就是全部10個帳號都登錄成功了
    在這里插入圖片描述
三、多用戶登錄實現2
  1. 既然項目是先獲取sessionid的,那么先請求一次,添加1個登錄前請求(主要是獲取返回的sessionid)
    在這里插入圖片描述

  2. 給登錄前接口加一個正則表達式(主要是來提取sessionid)
    在這里插入圖片描述

  3. 給登錄接口添加一個HTTP信息頭管理器,添加一個cookie參數
    在這里插入圖片描述

  4. 給登錄接口添加斷言,和上面一致
    在這里插入圖片描述

  5. 先跑1個請求,線程組和上面設置一樣,返回登錄成功的數據
    在這里插入圖片描述
    跑多個賬戶登錄

  6. 添加一個CSV,設置和上面的一致
    在這里插入圖片描述

  7. 更改線程組:線程數10,時間1s,循環1
    在這里插入圖片描述

  8. 設置登錄參數變量
    在這里插入圖片描述

  9. 啟動查看結果,從01帳號到10帳號登錄成功
    在這里插入圖片描述

擴展: 模擬真實場景(1個用戶可以搜索N次),增加一個搜索請求
  1. 添加一個僅1次控制器,把登錄前和登錄接口加入到僅一次控制器
    在這里插入圖片描述
  2. 線程組設置: 線程數:2 時間:1s 循環:永遠, 持續時間:2s
    在這里插入圖片描述
  3. 搜索請求添加一個信息頭管理器
    在這里插入圖片描述
  4. 發送請求,查看結果(除了登錄前和登錄接口請求3次意外,其他的都是搜索請求,有可能是用戶1或用戶2或用戶3的搜索了很多次)
    在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/19146.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/19146.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/19146.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

貪心(臨項交換)+01背包,藍橋云課 搬磚

一、題目 1、題目描述 2、輸入輸出 2.1輸入 2.2輸出 3、原題鏈接 0搬磚 - 藍橋云課 (lanqiao.cn) 二、解題報告 1、思路分析 將物品按照w[i] v[i]升序排序然后跑01背包就是答案 下面證明:(不要問怎么想到的,做題多了就能想到&#xff…

AVB協議分析(一) FQTSS協議介紹

FQTSS協議介紹 一、AVB整體架構二、概述三、協議作用及作用對象四、協議的實現五、參考文獻: 一、AVB整體架構 可見FQTSS位于MAC層的上面,代碼看不懂,咱們就從最底層開始,逐層分析協議,逐個擊破,慢就是快。…

基于GO 寫的一款 GUI 工具,M3u8視頻下載播放器-飛鳥視頻助手

M3u8視頻下載播放器-飛鳥視頻助手 M3u8視頻飛鳥視頻助手使用m3u8下載m3u8 本地播放 軟件下載地址m3u8嗅探 M3u8視頻 M3u8視頻格式是為網絡視頻播放設計,視頻網站多數采用 m3u8格式。如騰訊,愛奇藝等網站。 m3u8和 mp4的區別: 一個 mp4是一個…

【PB案例學習筆記】-12秒表實現

寫在前面 這是PB案例學習筆記系列文章的第11篇,該系列文章適合具有一定PB基礎的讀者。 通過一個個由淺入深的編程實戰案例學習,提高編程技巧,以保證小伙伴們能應付公司的各種開發需求。 文章中設計到的源碼,小凡都上傳到了gite…

Python3 筆記:math模塊

要使用 math 函數必須先導入math模塊 語法:import math Python math 模塊提供了許多對浮點數的數學運算函數。 math 模塊下的函數,返回值均為浮點數,除非另有明確說明。 如果需要計算復數,需使用 cmath 模塊中的同名函數。 m…

【2.文件和目錄相關(下)】

一、查看文件內容命令 1、cat 文件名:用于顯示文件內容,比如 cat test.c。 (1)cat -b test.c 表示加行號顯示文件內容。 (2)cat -s test.c 表示多個空行合并成一個空行顯示。 2、nl 文件名:…

2024 京麟ctf -MazeCodeV1

文章目錄 檢查代碼思路一個字節的指令注意附上S1uM4i佬們的exp https://www.ctfiot.com/184181.html 檢查 代碼 __int64 __fastcall check_solve(char *a1) {__int64 result; // rax__int64 v2; // rax__int64 index_step; // rax__int64 v4; // rax__int64 v5; // rax__int64…

vb.net,C#強制結束進程,“優雅”的退出方式

在VB.NET中,Application.Exit()和Environment.Exit(0)都用于結束程序,但它們的使用場景和背后的邏輯略有不同。 **Application.Exit()**: Application.Exit()通常用于Windows Forms應用程序中。當調用Application.Exit()時,它會觸…

cocos 屏幕點擊坐標轉換為節點坐標

let scPos event.getLocation(); let camera find(Canvas/Camera).getComponent(Camera).screenToWorld(new Vec3(scPos.x,scPos.y,0));//攝像機 let p this.node.getComponent(UITransform).convertToNodeSpaceAR(camera);//this.node為指定的節點為原點(0,0&…

MVC架構中的servlet層重定向404小坑

servlet層中的UserLoginServlet.java package com.mhys.servlet; /*** ClassName: ${NAME}* Description:** Author 數開_11* Create 2024-05-29 20:32* Version 1.0*/import com.mhys.pojo.User; import com.mhys.service.UserService; import com.mhys.service.impl.UserSer…

Unix環境高級編程--8-進程控制---8.7函數waitid 8.8函數wait3 wait4

1、Single Unix Specification支持一個取得進程終止狀態的函數--waitid,此函數類似于waitpid: pid_t wait(int *status); pid_t waitpid(pid_t pid, int *status, int options); int waitid(idtype_t idtype, id_t id, siginfo_t *infop, int options); …

MySQL之創建高性能的索引(六)

創建高性能的索引 選擇合適的索引列順序 當使用前綴索引的時候,在某些條件值的基數比正常值高的時候,問題就來了。例如,在某些應用程序中,對于沒有登錄的用戶,都將其用戶名記錄為"guest",在記錄…

【axios】的淺度分析

一、Axios的攔截器能干些什么? Axios攔截器的實現原理主要涉及兩個方面:請求攔截器和響應攔截器,它們分別在請求發送前和響應返回后進行預處理和后處理。 Axios內部維護了兩個數組,一個用于存儲請求攔截器,另一個用于…

數據庫基礎+增刪查改初階

數據庫基礎增刪查改初階 一。數據庫操作 1.概念: 一個mysql服務器上有很多的表,把有關系的表放在一起就構成了一個數據集合,此時稱為“數據庫”,一個mysql1服務器上可以有多個這樣的數據庫 2.創建數據庫: create …

穩住!一招制勝:打造JavaScript防抖函數的終極指南【含代碼示例】

穩住!一招制勝:打造JavaScript防抖函數的終極指南【含代碼示例】 防抖函數:概念與作用基礎實現:案例一簡單防抖函數使用示例 進階功能:案例二 - 立即執行版本性能優化與安全考量實戰技巧與問題排查實際問題與解決方案結…

基于python flask的旅游數據大屏實現,有爬蟲有數據庫

背景 隨著旅游行業的快速發展,數據在旅游決策和規劃中的重要性日益凸顯。基于 Python Flask 的旅游數據大屏實現研究旨在結合爬蟲技術和數據庫存儲,為用戶提供全面、實時的旅游信息展示平臺。 爬蟲技術作為數據采集的重要手段,能夠從各種網…

錯誤記錄:從把項目從Tomcat8.5.37轉到Tomcat10.1.7

錯誤信息:在本地Servlet項目里沒有報錯,但是瀏覽器跳轉該servlet時報錯 型 異常報告 消息 實例化Servlet類[com.wangdao.lx.MyServlet1]異常 描述 服務器遇到一個意外的情況,阻止它完成請求。 例外情況 jakarta.servlet.ServletExceptio…

Generative Action Description Prompts for Skeleton-based Action Recognition

標題:基于骨架的動作識別的生成動作描述提示 源文鏈接:https://openaccess.thecvf.com/content/ICCV2023/papers/Xiang_Generative_Action_Description_Prompts_for_Skeleton-based_Action_Recognition_ICCV_2023_paper.pdfhttps://openaccess.thecvf.c…

解決文件傳輸難題:如何繞過Gitee的100MB上傳限制

引言 在版本控制和代碼托管領域,Gitee作為一個流行的平臺,為用戶提供了便捷的服務。然而,其對單個文件大小設定的100MB限制有時會造成一些不便。 使用云存儲服務 推薦理由: 便捷性:多數云存儲服務如: Dro…

現代操作系統上創建各類鏈接的方法匯總

文章目錄 現代操作系統上創建各類鏈接的方法匯總windows: cmd下的mklink創建鏈接示例 powershell 創建鏈接創建常規文件和目錄創建鏈接 linux shell 創建硬鏈接NAMESYNOPSIS詳細說明常用選項示例 檢查與辨識符號鏈接🎈linux下檢查ls -l 命令file 命令 windows下檢查…