Sortie du journal de test unitaire avec python

Bonjour sekitaka.

Je produis généralement des journaux avec désinvolture, mais parfois je veux tester que les journaux sont générés. Cet article vous montrera comment tester que "les journaux sont en cours de sortie".

Méthode d'essai

testfixtures Pour tester que le journal est en cours de sortie, utilisez un package appelé test fixtures.

pip install testfixtures

Exemple d'utilisation

L'exemple suivant teste qu'une fonction appelée put_log génère un journal appelé foo au niveau INFO.

# coding=utf-8
from testfixtures import LogCapture
import logging
from unittest import TestCase
import unittest

logger = logging.getLogger()
def put_log(message):
    logger.info(message)

class Test(TestCase):
    def test_put_log(self):
        with LogCapture() as l:
            put_log("foo")
            l.check(
                ("root","INFO","foo")
            )

if __name__ == '__main__':
    unittest.main

application

L'argument de LogCapture () vous permet de filtrer le nom de l'enregistreur, le niveau de journalisation à capturer, etc. De plus, en définissant log_str = str (l), vous pouvez obtenir le texte intégral du journal dans le format suivant sous forme de chaîne de caractères, il peut donc être bon de tester avec des assertions telles que la correspondance d'expressions régulières.

root INFO
  foo

Mais je m'inquiète toujours de la distance à tester

Recommended Posts

Sortie du journal de test unitaire avec python
Sortie du journal Python vers la console avec GAE
Jugement des nombres premiers avec Python
Jugement des nombres premiers avec python
modèle de test unitaire python
Le journal Python n'est pas sorti avec docker-compose up
Test unitaire du flacon avec pytest
Tester la sortie standard avec Pytest
Journal de sortie au format JSON avec journalisation standard Python
Créer Apache Log CSV avec Python
Entrée / sortie avec Python (mémo d'apprentissage Python ⑤)
Sortie du journal python
[Note] Sortie Hello world avec python
[python3] Implémentez facilement la fonction de sortie du journal de débogage avec journalisation et cliquez sur
[Python] Test super facile avec instruction assert
Test de stress avec Locust écrit en Python
Tester les programmes non fonctionnalisés Python avec GitLab CI
Test WebUI avec Python2.6 + Selenium 2.44.0 - paramètre de profil
Sortir les caractères de couleur en joli avec python
Générer des données de test japonais avec Python Faker
Comment faire un test de sac avec python
Intégration avec setuptools / python setup.py test / pytest-runner
UnicodeEncodeError lutte avec la sortie standard de python3
FizzBuzz en Python3
Grattage avec Python
Statistiques avec python
Grattage avec Python
Python avec Go
sortie d'apprentissage python
Twilio avec Python
Intégrer avec Python
test unitaire numpy
Jouez avec 2016-Python
AES256 avec python
Testé avec Python
python commence par ()
avec syntaxe (Python)
Test d'intégrité Python
Bingo avec python
Zundokokiyoshi avec python
Test unitaire Python
Excel avec Python
Micro-ordinateur avec Python
Cast avec python
Créez des données de test comme ça avec Python (partie 1)
[Python] Ce que j'ai fait pour faire un test unitaire
Lire JSON avec Python et générer un CSV
J'ai essayé de sortir LLVM IR avec Python
Connectez-vous à Yahoo Business avec Selenium Python
bibliothèque de tests unitaires python introduction à l'option Nose-19 types-
[Petite histoire] Tester la génération d'images avec Python / OpenCV
ARC037 Baum teste poliment avec la fonction récursive Python
Sortez la docstring de la fonction de test dans le rapport avec pytest-html
[CentOS8] Comment afficher la sortie Python standard dans le journal systemd
Communication série avec Python
Jugement des nombres premiers par Python
Zip, décompressez avec python
Django 1.11 a démarré avec Python3.6
Communication de socket avec Python