自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JMeter與Python的多重交響:從入門到高級(jí)應(yīng)用(上)

開發(fā) 測(cè)試
在性能測(cè)試領(lǐng)域,Apache JMeter已經(jīng)成為測(cè)試專業(yè)人士的首選工具,但在某些情境下,為了滿足特定需求,我們需要更多的靈活性,比如引入Python來(lái)進(jìn)行特定操作或處理復(fù)雜邏輯。

在性能測(cè)試領(lǐng)域,Apache JMeter已經(jīng)成為測(cè)試專業(yè)人士的首選工具,用于模擬用戶行為、測(cè)量響應(yīng)時(shí)間、評(píng)估系統(tǒng)性能。但在某些情境下,為了滿足特定需求,我們需要更多的靈活性,比如引入Python來(lái)進(jìn)行特定操作或處理復(fù)雜邏輯。

Jython

Jython是Python語(yǔ)言的Java實(shí)現(xiàn),它允許您在JMeter中使用Python腳本,不需要額外的JAR包。

一、下載并配置

(1) 官網(wǎng)下載地址:Downloads | Jython

(2) 網(wǎng)盤鏈接:downloads > Jython 提取碼:ux02

(3) 將下載的jar包放到Jmeter的安裝路徑/lib,如: D:\application\apache-jmeter-5.1.1\lib

() 切記,重啟 jmeter

二、使用技巧

新增一個(gè)JSR223,選擇語(yǔ)言為“jython”;

注意:由于這個(gè)包使用的python版本為 2.7,所以寫代碼的時(shí)候不能全搬python3的語(yǔ)法過來(lái)玩。

示例一:前后置腳本中寫python代碼。

# jsr223 前置代碼中編寫:
"""該腳本用于加密登錄信息"""
import hashlib
import sys
import time
import json

def password_srt(pubkey,  password):
    time_str = str(time.time())
    sign_str = str(pubkey) + time_str + str(password)
    sign = hashlib.md5(sign_str.encode('utf-8')).hexdigest()
    res = {'sign': sign, 'pubkey': pubkey, 'password': password}
    res = json.dumps(res)
    return res

result = password_srt(1234,5678)
log.info(result)
vars.put("secrity",result) # 設(shè)置到變量,為后續(xù)取樣器使用。

貼圖:

示例二:后置腳本中寫python代碼

# jsr223 后置腳本代碼
import json
result = prev.getResponseDataAsString(); # 固定寫法,獲取響應(yīng)結(jié)果
log.info("------"+result)   # 這里使用print 會(huì)打印不到日志里面來(lái)顯示。
json_data = json.loads(result)  # 轉(zhuǎn)python識(shí)別的字典對(duì)象
token = json_data.get("token") # 獲取token值
log.info(token)
vars.put("token",token)

貼圖:

添加一個(gè)debug sample來(lái)檢查結(jié)果:

最終執(zhí)行結(jié)果:

一些小Tips:

  • 性能流淚: 使用 Python 腳本會(huì)引入性能問題,因?yàn)?Python 是一種解釋型語(yǔ)言,相比于 JMeter 自帶的 Java 腳本,Python 腳本的執(zhí)行效率可能會(huì)稍低,勇哥踩過這個(gè)坑?。?!
  • 維護(hù)想哭: 邏輯分散在 JMeter 的測(cè)試計(jì)劃和 Python 腳本之間時(shí),會(huì)導(dǎo)致維護(hù)困難;也不利于團(tuán)隊(duì)協(xié)作!
  • 依賴一坨翔: Python是2.7版本且難以支持第三方python庫(kù)使用,要寫復(fù)雜的代碼也是很頭疼的!
  • 調(diào)試難上天: JMeter 中調(diào)試 Python 腳本真是看花眼,因?yàn)槟憧吹男畔⒍际莏meter輸出的,定位問題一言難盡!
責(zé)任編輯:趙寧寧 來(lái)源: 測(cè)試玩家勇哥
相關(guān)推薦

2023-09-22 22:38:20

2024-04-11 14:00:28

2023-10-27 08:42:56

Python字典

2024-04-01 09:32:23

AccumulatePython工具

2025-01-07 14:42:09

2023-09-20 00:08:37

2024-10-17 09:57:30

2024-07-09 09:33:18

2021-12-12 18:15:06

Python并發(fā)編程

2024-02-26 08:52:20

Python傳遞函數(shù)參數(shù)參數(shù)傳遞類型

2020-07-07 10:50:19

Python丄則表達(dá)文本

2024-06-07 08:51:50

OpenPyXLPythonExcel文件

2017-06-26 09:15:39

SQL數(shù)據(jù)庫(kù)基礎(chǔ)

2025-03-28 06:01:00

TypeScript泛型開發(fā)

2023-05-09 08:34:51

PythonWith語(yǔ)句

2024-01-11 09:35:12

單元測(cè)試Python編程軟件開發(fā)

2012-02-29 00:49:06

Linux學(xué)習(xí)

2025-02-24 10:07:10

2024-06-18 08:21:31

2024-11-27 15:49:46

字符串Python
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)