Pytest 3.5 memperkenalkan parameter
pytest --log-cli-level=INFO
Untuk versi sebelum 3.5 Anda dapat menggabungkan opsi baris perintah pytest dan loglevel python dari contoh baris perintah untuk melakukan hal berikut:
Tambahkan kode berikut ke 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
lalu minta logger
perlengkapan dalam pengujian Anda
def test_bla(logger):
assert True
logger.info("True is True")
Kemudian jalankan pytest like
py.test --log INFO
untuk menyetel level log ke INFO
.
Ini sekarang dibangun ke dalam pytest. Cukup tambahkan '--log-level=' ke baris perintah saat menjalankan pengujian Anda. Misalnya:
pytest --log-level=INFO
Pembaruan dokumentasi dapat ditemukan di sini:https://docs.pytest.org/en/latest/logging.html
Coba --log-cli-level=INFO
seperti:
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
Bagaimana menggunakan Qt dalam Visual Studio Code?
Temukan apakah file ada atau tidak di HDFS menggunakan skrip shell