One, foreword

I believe that everyone is very strange to this tool, and there are very few information that can be searched in China, so why suddenly recommend to think of this tool? First, I think it works. Second, lay out the server-side performance automation framework described later.

Two, Taurus introduction

Taurus is The core component of BlazeMeter. It is an open source automation framework for running a variety of open source load testing tools and functional testing tools. The most popular open source testing tools supported are JMeter, Selenum, Gatling, The Grnder, Locust, etc

Liverpoolfc.tv: gettaurus.org/

Its key features are:

  • We can use YAML or JSON to describe the performance test, which is the test as code we want
    • Test solution definition and design
    • Test scenario parameterization and execution
    • Test scenario result analysis
    • Integrate all of the above processes into the continuous delivery process
    • Automate all of the above
  • It automatically downloads the appropriate tool based on the type of performance test we choose. For example, if we use the JMeter pressure engine, Taurus will be automatically downloaded and installed
  • Extending and abstracting load testing engines such as JMeter provides a simple way to create, run, and analyze performance tests
  • Supports mainstream operating systems such as MAC, Linux, and Window

Why do you recommend it?

  • Easy to use and upgrade
  • The script is easy to read, easy to version control, and a friendly unified DSL (domain-specific Language) to define the test scenario
  • Ability to support existing JMeter (or Grinder or Gatling or Selenium) test engines
  • Ability to directly parse native scripts such as JMeter JMX files
  • Ability to combine multiple test scripts or DSL-driven tests into scenarios
  • Support for real-time reporting (not recommended with BlazeMeter charging Dashboard)
  • Multiple test output formats, including but not limited to:
    • Native result format for the underlying test tool
    • Console statistics and pseudo-graphic charts during test execution
  • Flexible pass/fail criteria can be defined. If the result exceeds the threshold, the test can be automatically marked as a failure
  • Platform-independent: Run wherever You can run Python and Java

Fourth, environmental preparation

Taurus’s environmental requirements:

  • Python 2.7 or higher, recommended 3.x

This article demonstrates the installation under Centos 7.x

Install Python3.x

Install the shell script as follows:

#! /bin/bash
# author: zuozewei

Install the required packages first to facilitate subsequent operations
yum -y install wget gcc make  zlib-devel readline-devel  bzip2-devel ncurses-devel sqlite-devel gdbm-devel xz-devel tk-devel openssl-devel
Download the Python source code package from the Python official websiteWget HTTP: / / https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz# Unpack, unpackXz -d python-3.6.1.tar. xz tar -xvf python-3.6.1.tar# compiler
cdPython - 3.6.1. / configure -- prefix = / usr /local/python3.6 --enable-optimizations
make
make install
To avoid typing a long list of paths each time, add a link
ln -s /usr/local/ python3.6 / bin/python3 / usr/bin/python3Copy the code

Test version:

python3 --version
Copy the code

2. Install piP3.x

Install the shell script as follows:

#! /bin/bash
# author: zuozewei

# Download source codeWget - no - check - certificate https://github.com/pypa/pip/archive/9.0.1.tar.gz tar - ZVXF 9.0.1. Tar. GzcdPIP - 9.0.1Install using Python 3
python3 setup.py install

# Create link
ln -s /usr/local/ python3.6 / bin/PIP/usr/bin/pip3Copy the code

3. Install Taurus

3.1. General Installation

Install the shell script as follows:

#! /bin/bash
# author: zuozewei

# Download and install
sudo pip3 install bzt

# Create link
sudo ln -s /usr/local/ python3.6 / bin/BZT/usr/bin/BZTCopy the code

Validation command:

[root@VM_0_10_centos ~]# bzt -h
Usage: bzt [options] [configs] [-aliases]

BlazeMeter Taurus Tool v1.13.9, the configuration-driven test running engine

Options:
  -h, --help            show this help message and exit
  -l LOG, --log=LOG     Log file location
  -o OPTION, --option=OPTION
                        Override option in config
  -q, --quiet           Only errors and warnings printed to console
  -v, --verbose         Prints all logging messages to console
  -n, --no-system-configs
                        Skip system and user config files
Copy the code

3.2, Docker Image

Pull mirror image:

$ docker pull blazemeter/taurus
Copy the code

Note: If the default Docker official image source will be crazy slow, here is the best for your Docker image source to do accelerated Settings, refer to the following link:

  • Ariyun: help.aliyun.com/document_de…
  • Tencent cloud: cloud.tencent.com/document/pr…

View a full image:

[root@VM_0_10_centos ~]# docker imagesThe REPOSITORY TAG IMAGE ID CREATED the SIZE docker. IO/blazemeter/Taurus latest 3 ab3eb131ed8 9 days line 3.08 GBCopy the code

Five, the summary

This article takes you to quickly build up Taurus use environment, for the follow-up practice part to prepare.