GNU/Linux >> Znalost Linux >  >> Linux

pytest - zadejte úroveň protokolu z příkazu CLI spouštějícího testy

Pytest 3.5 zavedl parametr

pytest --log-cli-level=INFO

U verzí před 3.5 můžete kombinovat možnosti příkazového řádku pytest a úroveň protokolu python z příkladu příkazového řádku a provést následující:

Přidejte následující do conftest.py :

import pytest
import logging


def pytest_addoption(parser):
    parser.addoption(
        "--log", action="store", default="WARNING", help="set logging level"
    )


@pytest.fixture
def logger():
    loglevel = pytest.config.getoption("--log")
    logger = logging.getLogger(__name__)

    numeric_level = getattr(
        logging,
        loglevel.upper(),
        None
    )
    if not isinstance(numeric_level, int):
        raise ValueError('Invalid log level: %s' % loglevel)

    logger.setLevel(numeric_level)
    return logger

a poté si vyžádejte logger příslušenství ve vašich testech

def test_bla(logger):
    assert True
    logger.info("True is True")

Poté spusťte pytest jako

py.test --log INFO

pro nastavení úrovně protokolu na INFO .


To je nyní zabudováno do pytestu. Stačí přidat '--log-level=' do příkazového řádku při spuštění testu. Například:

pytest --log-level=INFO

Aktualizace dokumentace lze nalézt zde:https://docs.pytest.org/en/latest/logging.html


Zkuste --log-cli-level=INFO

jako:

pytest -vv -s --log-cli-level=INFO --log-cli-format="%(asctime)s [%(levelname)8s] %(message)s (%(filename)s:%(lineno)s)" --log-cli-date-format="%Y-%m-%d %H:%M:%S" ./test_file.py

Linux
  1. 4 způsoby, jak udržet příkaz spuštěný poté, co se odhlásíte z relace SSH

  2. Jak zachovat spuštěný příkaz, který jsem začal z prostředí Shell, pokud se odhlásím z prostředí Shell?

  3. Migrace linuxového serveru z příkazového řádku

  1. Linux Základy příkazového řádku – Spouštění příkazů z příkazového řádku

  2. Jak určíte názvy souborů v zipu při jeho vytváření na příkazovém řádku z roury?

  3. Vytiskněte poslední řádek souboru z CLI

  1. Nakonfigurujte pracovní prostor Linuxu vzdáleně z příkazového řádku

  2. Jak spustit příkaz Vim z shellu?

  3. Jak získám svou IP adresu z příkazového řádku?