pytest_th2_bdd
Project description
Th2 pytest bdd plugin
This is the plugin for pytest, which uses pytest-bdd plugin and th2 as backend.
Features
- Typed tables in feature file;
- Th2 client boilerplate isolation (auto th2 access factory creation, events hierarchy creation in background);
- Test context.
Installation
-
From PyPI
This package can be found on PyPI.pip install pytest-th2-bdd -
From Source
git clone https://github.com/th2-net/pytest-th2-bdd pip install pytest-th2-bdd/
Available fixtures
factory
This fixture yields th2 CommonFactory for which will be created from configuration located in configs/ directory.
ctx
This fixture is used for inter-steps communication. It has some important service items:
| key | purpose |
|---|---|
__ROOT__ |
root events for each feature |
__SCENARIO__ |
current scenario root event |
__SCENARIO_START__ |
current scenario start datetime (in UTC) |
__STEP__ |
current step event |
Requirements
- Prepared th2 test environment;
- Configuration for th2 CommonFactory in
configs/directory;
How to use tables
Imagine, that you need to pass data as table in some step:
| field1 | field2 | ... | fieldN |
| 1 | 2 | ... | 3 |
...
| valN | valK | ... | valM |
- You need to declare dataclass with header definition:
@dataclass
class SomeRow:
field1: str
field2: str
...
fieldN: str
- Add field and converter at the desired step definition
@given(
parsers.cfparse(
"some step description {var1} ... \n{table}",
),
converters={"table": Table(SomeRow)}, # converter setup
)
def some_step(var1, table: Table[SomeRow]): # Syntax hints via generics
...
How to start test process (with installed plugin)
pytest tests/
How to start test process (without installed plugin)
export PYTHONPATH=path/to/directory/with/this/repository:$PYTHONPATH
pytest -p th2_bdd.pytest tests/
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
pytest_th2_bdd-0.0.1.tar.gz
(6.8 kB
view details)
File details
Details for the file pytest_th2_bdd-0.0.1.tar.gz.
File metadata
- Download URL: pytest_th2_bdd-0.0.1.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d8d873977a4996632eda00b12e4963a9a60c796b34068795e8d742dfb13f7da
|
|
| MD5 |
e1834dda6806a94e9875d8d1ab59d004
|
|
| BLAKE2b-256 |
c1307073a4dea2d3a180b091acdcce972ba397572aa22bb7f2dcfeeb96fb3b0b
|