欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實現(xiàn)性能自動化測試竟然如此簡單

 更新時間:2019年07月30日 10:32:52   作者:可優(yōu)  
這篇文章主要介紹了Python實現(xiàn)性能自動化測試的方法,本文圖文并茂通過實例代碼相結(jié)合的形式給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下

一、思考❓❔

1.什么是性能自動化測試?

性能系統(tǒng)負載能力超負荷運行下的穩(wěn)定性系統(tǒng)瓶頸自動化測試使用程序代替手工提升測試效率性能自動化使用代碼模擬大批量用戶讓用戶并發(fā)請求多頁面多用戶并發(fā)請求采集參數(shù),統(tǒng)計系統(tǒng)負載能力生成報告

2.Python中的性能自動化測試庫?

locust庫

使用Python使用代碼來創(chuàng)建批量用戶分布式可以在多臺服務器上,進行分布式性能測試可伸縮性強穩(wěn)定、應用廣泛經(jīng)得住各種場景下的考驗基于web ui界面展示測試詳情能測任何系統(tǒng)

二、基礎(chǔ)操作🔨🔨

1.安裝locust

使用官方pypi源來安裝

pip install locustio

使用豆瓣pypi源來安裝(推薦)

pip install -i https://pypi.douban.com/simple locustio

安裝成功之后,在cmd控制臺將會新增一條命令,可輸入如下命令查看:

locust --help

2.基本用法

在項目根目錄下創(chuàng)建locustfile.py文件

from locust import Locust, TaskSet, task
class MyTasks(TaskSet):
 """
 創(chuàng)建測試任務類,需要繼承TaskSet
 可以添加多個測試任務
 """
 # 每個測試任務,往往會以實例方法的形式來呈現(xiàn)
 # 同時需要使用task裝飾器來裝飾測試任務
 @task
 def one_task(self):
  print("執(zhí)行一個偉大的測試任務!")
class RunTasks(Locust):
 """
 創(chuàng)建運行測試類,需要繼承Locust父類
 """
 task_set = MyTasks # 指定測試任務類,使用task_set覆蓋父類的類屬性
 min_wait = 2000  # 指定啟動任務間隔的時間范圍(單位毫秒):2~5秒之間
 max_wait = 5000  # 使用min_wait、max_wait覆蓋父類的類屬性

執(zhí)行性能測試

# 打開Pycharm Terminal控制臺

# 運行如下命令:locust

運行之后,控制臺會在本地監(jiān)聽一個端口

a. 程序文件要命名為 locustfile.py才行

b. 假如命名為one_example.py,則需要這樣運行

locust -f one_example.py

在瀏覽器打開UI設置界面

默認使用localhost:8089打開

三、綜合案例演練🔨🔨

1.編寫自動化測試腳本在項目根目錄下創(chuàng)建test_load.py文件

from locust import HttpLocust, TaskSet, task
class AdminLoadTest(TaskSet):
 """
 創(chuàng)建后臺管理站點壓測類,需要繼承TaskSet
 可以添加多個測試任務
 """
 def login(self):
  """
  登錄實例方法
  :return: 
  """
  self.client.post("http://localhost:8088/users/login/",
       {"user_account": "admin", "password": "123456"})
 def logout(self):
  """
  登出實例方法
  :return:
  """
  self.client.get("http://localhost:8088/users/logout/")
 def on_start(self):
  """
  當任何一個task調(diào)度執(zhí)行之前,
  on_start實例方法會被調(diào)用
  先登錄
  :return:
  """
  self.login()
 def on_stop(self):
  """
  當任何一個task調(diào)度執(zhí)行之后,
  on_stop實例方法會被調(diào)用
  后登出
  :return:
  """
  self.logout()
 @task
 def admin_index(self):
  """
  對后臺主頁進行壓測
  :return:
  """
  self.client.get("http://localhost:8088/admin/")
class RunLoadTests(HttpLocust):
 """
 創(chuàng)建運行壓測類
 """
 task_set = AdminLoadTest

2.使用命令行運行打開Pycharm Terminal控制臺,運行如下命令:

注意:--host參數(shù)指定http主機地址,-f參數(shù)指定壓測程序文件名

3.打開web ui界面進行配置

設置并發(fā)用戶數(shù)為10,每5秒創(chuàng)建一個用戶

壓測過程截圖

美輪美奐的壓測報告

壓測失敗詳情

下載壓測統(tǒng)計數(shù)據(jù)

下載的壓測統(tǒng)計數(shù)據(jù)csv文件

六、總結(jié)💡💡

locust做壓測功能極其強大支持分布式部署提供的接口簡單壓測代碼非常容易編寫提供UI界面來配置美觀、詳細的圖表統(tǒng)計

總結(jié)

以上所述是小編給大家介紹的Python實現(xiàn)性能自動化測試竟然如此簡單,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • Python rindex()方法案例詳解

    Python rindex()方法案例詳解

    這篇文章主要介紹了Python rindex()方法案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • Python并行分布式框架Celery詳解

    Python并行分布式框架Celery詳解

    今天小編就為大家分享一篇關(guān)于Python并行分布式框架Celery詳解的文章,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • 解決pycharm 誤刪掉項目文件的處理方法

    解決pycharm 誤刪掉項目文件的處理方法

    今天小編就為大家分享一篇解決pycharm 誤刪掉項目文件的處理方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python爬蟲使用代理IP的實現(xiàn)

    Python爬蟲使用代理IP的實現(xiàn)

    這篇文章主要介紹了Python爬蟲使用代理IP的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • python數(shù)據(jù)持久存儲 pickle模塊的基本使用方法解析

    python數(shù)據(jù)持久存儲 pickle模塊的基本使用方法解析

    這篇文章主要介紹了python數(shù)據(jù)持久存儲 pickle模塊的基本使用方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-08-08
  • python常用模塊(math itertools functools sys shutil)使用講解

    python常用模塊(math itertools functools sys 

    這篇文章主要介紹了python常用模塊之math itertools functools sys shutil的使用示例講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • python 實現(xiàn)rolling和apply函數(shù)的向下取值操作

    python 實現(xiàn)rolling和apply函數(shù)的向下取值操作

    這篇文章主要介紹了python 實現(xiàn)rolling和apply函數(shù)的向下取值操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python中的遠程調(diào)試與性能優(yōu)化技巧分享

    Python中的遠程調(diào)試與性能優(yōu)化技巧分享

    Python 是一種簡單易學、功能強大的編程語言,廣泛應用于各種領(lǐng)域,包括網(wǎng)絡編程、數(shù)據(jù)分析、人工智能等,在開發(fā)過程中,我們經(jīng)常會遇到需要遠程調(diào)試和性能優(yōu)化的情況,本文將介紹如何利用遠程調(diào)試工具和性能優(yōu)化技巧來提高 Python 應用程序的效率和性能
    2024-05-05
  • 改進Django中的表單的簡單方法

    改進Django中的表單的簡單方法

    這篇文章主要介紹了改進Django中的表單的簡單方法,Django是Python重多人氣框架中最著名的一個,需要的朋友可以參考下
    2015-07-07
  • 使用matplotlib庫實現(xiàn)圖形局部數(shù)據(jù)放大顯示的實踐

    使用matplotlib庫實現(xiàn)圖形局部數(shù)據(jù)放大顯示的實踐

    本文主要介紹了使用matplotlib庫實現(xiàn)圖形局部數(shù)據(jù)放大顯示的實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02

最新評論