1. 程式人生 > >(二)Locust 安裝

(二)Locust 安裝

pac BE HR ati sts creat 數據 event www.

Locust 是基於 Python 語言的一個性能測試庫,如果要想使用它來做性能測試必須要先安裝 Python 。

Python安裝,參考

Locust 安裝


方式一:通過 pip 命令安裝

> pip install locust

Collecting locust
  Downloading locust-0.8.tar.gz (225kB)
    59% |███████████████████             | 133kB 199kB/s eta 0:00:0
    63% |████████████████████▍           | 143kB 304kB/s eta 0:00:
    68% |█████████████████████▉          | 153kB 358kB/s eta 0:0
    72% |███████████████████████▎        | 163kB 355kB/s eta 0:
    77% |████████████████████████▊       | 174kB 421kB/s eta
    81% |██████████████████████████▏     | 184kB 449kB/s eta
    86% |███████████████████████████▋    | 194kB 439kB/s e
    90% |█████████████████████████████   | 204kB 487kB/s
    95% |██████████████████████████████▌ | 215kB 492kB/s
    99% |████████████████████████████████| 225kB 487kB
    100% |████████████████████████████████| 235kB 417k

    ....

方式二:GitHub下載安裝

GitHub項目地址:https://github.com/locustio/locust/

將項目克隆下來,通過Python 執行 setup.py 文件

...\locust> python setup.py install

running install
running bdist_egg
running egg_info
creating locustio.egg-info
writing locustio.egg-info\PKG-INFO
writing dependency_links to locustio.egg-info\dependency_links.txt
writing entry points to locustio.egg-info\entry_points.txt
writing requirements to locustio.egg-info\requires.txt
writing top-level names to locustio.egg-info\top_level.txt
writing manifest file ‘locustio.egg-info\SOURCES.txt‘
...

最後,檢查是否安裝成功。打開Windows命令提示符,輸入 “locust –help” 回車。

> locust --help

Usage: locust [options] [LocustClass [LocustClass2 ... ]]

Options:
  -h, --help            show this help message and exit

...


每個參數的含義,將會放到後面介紹。

安裝依賴分析


這裏想簡單介紹 Locust 都基於了哪些庫。打開 Locust 安裝目錄下的 setup.py 文件。查看安裝要求:

install_requires=[“gevent>=1.1.2”, “flask>=0.10.1”, “requests>=2.9.1”, “msgpack-python>=0.4.2”, “six>=1.10.0”, “pyzmq==15.2.0”]

gevent 是在 Python 中實現協程的一個第三方庫。協程,又稱微線程(Coroutine)。使用gevent可以獲得極高的並發性能。

flask 是 Python 的一個 Web 開發框架。

Requests 用來做 HTTP 接口測試。

msgpack-python 是一種快速、緊湊的二進制序列化格式,適用於類似JSON的數據。

six 提供了一些簡單的工具用來封裝 Python2 和 Python3 之間的差異性。

pyzmq 如果你打算運行 Locust 分布在多個進程/機器,建議你安裝pyzmq。

當我們在安裝 Locust 時,它會檢測我們當前的 Python 環境是否已經安裝了這些庫,如果沒有安裝,它會先把這些庫一一裝上。並且對這些庫版本有要求,有些是必須等於某版本,有些是大於某版本。我們也可以事先把這些庫全部按要求裝好,再安裝Locust時就會快上許多。

(二)Locust 安裝