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
File details
Details for the file pytest_th2_bdd-0.0.1.dev2320248668.tar.gz.
File metadata
- Download URL: pytest_th2_bdd-0.0.1.dev2320248668.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 |
6ee67c48a1b492b2cb6713a16892489d548345c7df4b8ba487695ece9fe695be
|
|
| MD5 |
34e9bae2369ebc64ddf873adbabf965d
|
|
| BLAKE2b-256 |
e8076769a82c6965eb6e26006a270a02799e536f60c8b07684ed2e7ad7053039
|