Skip to main content

Qiwu auto test tool, supports accuracy/pressure tests for knowledge base, QA API and server backend

Project description

QiwuGrader

Qiwu auto test tool, supports accuracy / pressure tests for knowledge base, QA API and server backend

Chinese version

[TOC]

1. Author

Feliciano Long

Zhiyu.Zhou

Statics

2. Supports

Python2 > 2.7 and Python3 (preferred)

3. Installation

Install from PYPI

pip install QiwuGrader

Download source code

  1. For Windows users please download (Mac users could skip this step)

https://www.python.org/ftp/python/2.7.15/python-2.7.15.msi

  1. (Optional) If Environment Variables is not set correctly, add python executable and pip script to system Path. How to

  2. Install requirements

pip install -r requirements.txt

Download release

Deprecated, please install using pip

Release executable

4. Run

last two parameters are ignorable

Run from module

qiwugrader [testcase] [session number] [test duration]

or

python -m qiwugrader.app [testcase] [session number] [test duration]

Run from source

python qiwugrader/app.py [testcase] [session number] [test duration]

5. Usage

single session test

test one case:

qiwugrader ./testcases/test1.yml

test multiple cases:

qiwugrader ./testcases/test1.yml ./testcases/test2.yml

multiple session test (multi threading)

Use multiple threads to test, in this mode only one CPU is used.

start 10 sessions in 5 seconds

qiwugrader ./testcases/test3.yml 10 5

print_conversation switch is suggested to turn off in multiple session test to make report more readable

multiple session test (multi processing)

Use multiple processes to test, in this mode the program will start logical CPU number processes (each assigned session number DIV CPU number tasks)

Similar to multi threading test, this mode will be enabled when session count larget than 1000 and start interval less than 0.1s

start 1200 sessions in 60 seconds

qiwugrader ./testcases/test4.yml 1200 60

6. Configuration

Examples are under /testcases folder

Check test1 (full explanation) and test2 (minimum test case) for knowledge tests, test3 (json request / QA dialogue) and test4 (form request / knowledge backend) for api test

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

QiwuGrader-1.7.0.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

QiwuGrader-1.7.0-py2.py3-none-any.whl (47.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file QiwuGrader-1.7.0.tar.gz.

File metadata

  • Download URL: QiwuGrader-1.7.0.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.16

File hashes

Hashes for QiwuGrader-1.7.0.tar.gz
Algorithm Hash digest
SHA256 8af8e8c5def347400402ba5b9366a83a7bf0adc0a0af5840268e48cbf426448f
MD5 bbe318a98262fdbeb2c5ae3ae0cc8dde
BLAKE2b-256 9e897ce14f16276c72a35cbdef9ea97ef9a27848782f2df5a6f033669f9f3fc1

See more details on using hashes here.

File details

Details for the file QiwuGrader-1.7.0-py2.py3-none-any.whl.

File metadata

  • Download URL: QiwuGrader-1.7.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 47.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.16

File hashes

Hashes for QiwuGrader-1.7.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 2415575f427b6d65392d9a8a2f52c9ad3072ff0b16f34c49249b0ef08d889dcf
MD5 80519ad2c70726174141212e05d6b4f3
BLAKE2b-256 dd0b782e222d4aee61f6dac11b94a68058b1db5e594a1076b9990df479aa8270

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page