Test Framework for the ByteBlower Traffic Generator.
Project description
An easy accessible library of basic test flows and reporting engines.
ByteBlower ® is a traffic generator/analyser system for TCP/IP networks.
This library provides you with the building blocks for:
Generating test traffic
Collect statistics
Analyse traffic statistics
Generate reports
Requirements
byteblowerll (ByteBlower API): Our lower layer API for client-server communication (API documentation)
scapy: Used for frame generation and parsing
junit-xml: Used for Unit test report generation
pandas: Used for data collection
python-highcharts: Used for generating graphs
jinja2: User for HTML report templating
Supported platforms
The ByteBlower Test Framework in general supports Python version 3.7 to 3.9.
The framework has been tested for the following operating system platforms and Python versions:
OS platform |
Distribution |
Python version |
source |
---|---|---|---|
Windows 10 |
up to feature release 21H2 |
Python 3.9 |
|
Windows 10 |
up to feature release 21H2 |
Python 3.8 |
|
Windows 10 |
up to feature release 21H2 |
Python 3.7 |
|
Windows 10 |
up to feature release 21H2 |
Python 3.9 |
|
Windows 10 |
up to feature release 21H2 |
Python 3.8 |
|
Windows 10 |
up to feature release 21H2 |
Python 3.7 |
|
macOS |
up to Monterey |
Python 3.9 |
Official Python (Intel-only!) |
macOS |
up to Monterey |
Python 3.8 |
Official Python (Intel-only!) |
Linux |
Debian 11 (bullseye) |
Python 3.9.2 |
|
Linux |
Debian 10 (buster) |
Python 3.7.3 |
|
Linux |
Ubuntu 20.04 (Focal Fossa) |
Python 3.8.2 |
|
Docker |
python:3.7-slim-buster |
Python 3.7.3 |
Installation
Prepare runtime environment
We encourage to manage the runtime environment in a Python virtual environment. This guarantees proper separation of the system-wide installed Python and pip packages.
Python virtual environment
Using Python venv (included in Python >= 3.3):
Prepare Python virtual environment: Create the virtual environment and install/update pip and build.
python3 -m venv env
. ./env/bin/activate
pip install -U pip build
Install the ByteBlower Test Framework from PyPI
First make sure that your activated your virtual environment:
. ./env/bin/activate
Now install (or update) the ByteBlower Test Framework:
python3 -m pip install -U byteblower-test-framework
Documentation
Online usage documentation: ByteBlower Test Framework documentation
The API documentation is also always available in the API:
help(any_api_object)
Some examples:
For classes (and their members):
from byteblower_test_framework.host import Server
from byteblower_test_framework.endpoint import IPv4Port
from byteblower_test_framework.traffic import FrameBlastingFlow
help(Server)
help(Server.start)
help(Server.info)
help(IPv4Port)
help(FrameBlastingFlow)
from byteblower_test_framework.report import ByteBlowerHtmlReport
help(ByteBlowerHtmlReport)
For objects (and their members):
from byteblower_test_framework.host import Server
my_server = Server('byteblower-39.lab.excentis.com.')
help(my_server)
help(my_server.start)
Usage
First make sure that your activated your virtual environment:
. ./env/bin/activate
Let’s give it a test run: Import the test framework and show its documentation:
python
import byteblower_test_framework
help(byteblower_test_framework)
This shows you the ByteBlower Test Framework module documentation.
Development
Would you like to contribute to this project? You’re very welcome! 😊
Please contact us at ByteBlower Support and we’ll be there to guide you.
Support
If you have any questions or feature request you can contact the ByteBlower support team using:
🕽: +32 (0) 9 269 22 91
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for byteblower-test-framework-1.0.0b8.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3168db0f46e68c037ab32ef046075de576cfe0111e471e0507fa58c982d82d16 |
|
MD5 | c30dabe71b4eb47ac49ad27a12f6e037 |
|
BLAKE2b-256 | bc2e58188c17e1fd53144f8638ed3c624d586a4a12393bd1485770d711374440 |
Hashes for byteblower_test_framework-1.0.0b8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f67c1bd7c05fb4a1feb6d9261c7a3e897ca7d93d738289b774d6a237614ce11 |
|
MD5 | 84f831babd5be7c233db087b6302db2e |
|
BLAKE2b-256 | c300ae35d25b59e86097b95f14a6d7114adbaf54ea5663e2c7100439f743858a |