2017-07-27 1 views
1

Donc j'essaye de SFTP automatiquement un rapport html (que pytest crée) à un serveur après pytest finit l'exécution. Cela existe-t-il dans pytest ou dois-je créer un wrapper? Je sais qu'il existe des méthodes "setup" et "teardown" et il existe une méthode de démontage que vous pouvez exécuter après que tous les tests aient été exécutés, mais cela se produit AVANT que le rapport soit généré (pas ce que je veux!).Comment exécuter du code après que pytest a généré un rapport (en utilisant pytest)?

Répondre

2

Vous pouvez gérer ceci dans le crochet pytest_unconfigure. Si vous utilisez pytest-html pour générer vos rapports de test, vous pouvez faire quelque chose comme ceci pour accéder au chemin des rapports

# in conftest.py 
def pytest_unconfigure(config): 
    html_report = config._html.logfile # provides full path of generated html report 
    # or 
    html_report = config.option.htmlpath # provides the value passed with --html command line option 
    # your code to upload to sftp goes here