Articles of pytest

Registro dentro de pruebas de py.test

Me gustaría poner algunas declaraciones de registro dentro de la función de prueba para examinar algunas variables de estado. Tengo el siguiente fragmento de código: import pytest,os import logging logging.basicConfig(level=logging.DEBUG) mylogger = logging.getLogger() ############################################################################# def setup_module(module): ”’ Setup for the entire module ”’ mylogger.info(‘Inside Setup’) # Do the actual setup stuff here pass def setup_function(func): […]

Burlándose de un módulo de importación en pytest

Estoy escribiendo un complemento de pytest que debería probar el software que está diseñado para funcionar dentro de un conjunto de entornos específicos. El software que estoy escribiendo se ejecuta dentro de un marco más grande, lo que hace que ciertos módulos de Python estén disponibles solo cuando se ejecuta mi software de Python dentro […]

¿Cómo configuro y desarmo correctamente mi clase pytest con pruebas?

Estoy usando selenium para las pruebas de extremo a extremo y no puedo ver cómo usar los métodos setup_class y teardown_class . Necesito configurar el navegador en el método setup_class , luego realizar un montón de pruebas definidas como métodos de clase y finalmente cerrar el navegador en el método teardown_clas s. Pero lógicamente parece […]

¿Cómo puedo ver el resultado de impresión normal creado durante la ejecución de pytest?

Algunas veces solo quiero insertar algunas declaraciones impresas en mi código y ver qué se imprime cuando lo hago. Mi forma habitual de “ejercitarlo” es con las pruebas pytest existentes. Pero cuando ejecuto estos, no puedo ver ninguna salida estándar (al menos desde PyCharm, mi IDE). ¿Hay una forma sencilla de ver la salida estándar […]

Diseño e importación de pytest en python3

Tengo problemas para importar módulos de mis funciones pytest. Sé que hay un millón de preguntas sobre esto, pero he leído un montón y todavía tengo problemas para entender. $ tree . └── code ├── eight_puzzle.py ├── missionaries_and_cannibals.py ├── node.py ├── search.py └── test ├── test_eight_puzzle.py └── test_search.py 2 directories, 6 files $ $ grep […]

unittest Vs pytest

En unittest, puedo configurar variables en una clase y luego los métodos de esta clase pueden elegir la variable que quiera usar … class test_class(unittest.TestCase): def setUp(self): self.varA = 1 self.varB = 2 self.varC = 3 self.modified_varA = 2 def test_1(self): do_something_with_self.varA, self.varB def test_2(self): do_something_with_self_modified_varA, self.varC Así que en unittest, fue fácil organizar un […]

Reprobar las pruebas pytest restantes si falla una específica

Así que tengo un directorio lleno de un montón de pruebas escritas en python con la syntax adecuada para asegurar que se ejecuten en orden. Entonces, digamos que tengo una prueba que si falla, actualmente llama a pytest.exit (‘Mensaje de salida’). El problema con esto es que la salida de prueba generada en XML solo […]

Usando variables ansibles en testinfra

Uso de TestInfra con Ansible backend para fines de prueba. Todo va bien, excepto el uso de Ansible al ejecutar pruebas. test.py import pytest def test_zabbix_agent_package(host): package = host.package(“zabbix-agent”) assert package.is_installed package_version = host.ansible(“debug”, “msg={{ zabbix_agent_version }}”)[“msg”] (…) donde zabbix_agent_version es una variable ansible de group_vars. Se puede obtener ejecutando este libro de jugadas. – […]

Compruebe si alguna de las pruebas genera una advertencia de desaprobación con pytest

Estoy usando pytest para ejecutar pruebas en un paquete de Python, y me gustaría saber si alguno de los códigos que se ejecutan como parte de las pruebas está generando advertencias de desaprobación (cuando todas las pruebas pasan). ¿Alguien sabe de una manera de hacer esto?

Pytest ejecutando escenarios en el orden correcto en la clase

Así que tengo la siguiente estructura: class Test(object): def test_1(self): pass def test_2(self): pass def test_3(self): pass funciona muy bien, AHORA estoy agregando los “escenarios” (como se recomienda en pytest – Un puerto rápido de “escenarios de prueba” ): def pytest_generate_tests(metafunc): idlist = [] argvalues = [] for scenario in metafunc.cls.scenarios: idlist.append(scenario[0]) items = scenario[1].items() […]