| ============== |
| Pytest Twister harness |
| ============== |
| |
| Installation |
| ------------ |
| |
| If you plan to use this plugin with Twister, then you don't need to install it |
| separately by pip. When Twister uses this plugin for pytest tests, it updates |
| `PYTHONPATH` variable, and then extends pytest command by |
| `-p twister_harness.plugin` argument. |
| |
| |
| Usage |
| ----- |
| |
| Run exemplary test shell application by Twister: |
| |
| .. code-block:: sh |
| |
| cd ${ZEPHYR_BASE} |
| |
| # native_sim & QEMU |
| ./scripts/twister -p native_sim -p qemu_x86 -T samples/subsys/testsuite/pytest/shell |
| |
| # hardware |
| ./scripts/twister -p nrf52840dk/nrf52840 --device-testing --device-serial /dev/ttyACM0 -T samples/subsys/testsuite/pytest/shell |
| |
| or build shell application by west and call pytest directly: |
| |
| .. code-block:: sh |
| |
| export PYTHONPATH=${ZEPHYR_BASE}/scripts/pylib/pytest-twister-harness/src:${PYTHONPATH} |
| |
| cd ${ZEPHYR_BASE}/samples/subsys/testsuite/pytest/shell |
| |
| # native_sim |
| west build -p -b native_sim -- -DCONFIG_NATIVE_UART_0_ON_STDINOUT=y |
| pytest --twister-harness --device-type=native --build-dir=build -p twister_harness.plugin |
| |
| # QEMU |
| west build -p -b qemu_x86 -- -DQEMU_PIPE=qemu-fifo |
| pytest --twister-harness --device-type=qemu --build-dir=build -p twister_harness.plugin |
| |
| # hardware |
| west build -p -b nrf52840dk/nrf52840 |
| pytest --twister-harness --device-type=hardware --device-serial=/dev/ttyACM0 --build-dir=build -p twister_harness.plugin |