Articles of pytest

Prueba de parametrización con múltiples accesorios que aceptan argumentos

Estoy tratando de probar una función matemática que escribí. Me gustaría suministrarle datos desde una serie de instalaciones diferentes. El problema es que todos los aparatos aceptan diferentes parámetros de aparatos propios. La prueba que ejecuto es siempre la misma ( test_myfunc en el ejemplo), y los dispositivos que quiero enchufar tienen los mismos valores […]

¿Cómo hago que la instancia del controlador pytest esté disponible en mi testcase?

Estoy tratando de construir un marco de automatización basado en selenium, usando Python, Pytest. Mi intención es crear una instancia de controlador en el nivel de clase inicializándola en conftest.py y haciéndola disponible en todos los casos de prueba, para que el usuario no tenga que crear la instancia de controlador en cada caso de […]

En pytest, ¿cómo omitir o xfail ciertos accesorios?

Tengo una función de prueba fuertemente arreglada que falla (como debería) con ciertas entradas de aparatos. ¿Cómo puedo indicar esto? Esto es lo que estoy haciendo ahora, y tal vez hay una mejor manera. Soy bastante nuevo en py.test así que agradecería cualquier consejo. La siguiente parte es todos los accesorios de entrada. Para su […]

usando el valor de retorno del aparato como valor en mark.parametrize ()

mi pregunta es: ¿es posible usar el valor de retorno de un dispositivo como un valor para parametrizar? El problema es que me gustaría obtener dinámicamente los valores posibles (por ejemplo, los sistemas disponibles en un servidor virtual) para parametrizar. Puedo acceder a estos cuando un dispositivo virtual es creado por uno de los dispositivos. […]

¿Cómo configura PyCharm para ejecutar py.test con opciones de línea de comandos como -s?

Descubrí cómo ejecutar los archivos py.test de PyCharm: Ejecutar / Depurar configuraciones en la categoría de pruebas de Python, haga clic en el botón “+” para agregar una nueva configuración elige py.test ingrese la ruta completa para el script de destino y el directorio de trabajo pero parece que no puedo agregar la opción -s […]

¿Por qué el monkeypatch de Python no funciona al importar una clase en lugar de un módulo?

Estaba teniendo problemas al usar el código de la respuesta aceptada aquí . El código funciona dependiendo de cómo hago la importación de datetime. ¿Porqué es eso? ¿Es posible burlarse de él para que funcione en ambos sentidos? Estoy usando Python 3.4 . El siguiente código ilustra el problema: import pytest from datetime import datetime […]

Creando bases de datos en pruebas SQLAlchemy con PostgreSQL

Estoy construyendo una aplicación web de Pyramid que se basa en la parte superior de SQLAlchemy y solo confía en PostgreSQL como su base de datos. ¿Cuál sería una manera de tener la estructura de las pruebas unitarias para que La base de datos se setUp() una vez por ejecución de prueba, no en cada […]

control de registro de py.test

Recientemente hemos cambiado a py.test para pruebas de python (lo cual es fantástico por cierto). Sin embargo, estoy intentando averiguar cómo controlar la salida del registro (es decir, el módulo de registro Python incorporado). Tenemos pytest-capturelog instalado y esto funciona como se esperaba y cuando queremos ver registros podemos pasar la opción –nologcapture. Sin embargo, […]

Pytest: ¿Cómo probar una función con una llamada de entrada?

Tengo un progtwig de consola escrito en Python. Le hace preguntas al usuario usando el comando: some_input = input(‘Answer the question:’, …) ¿Cómo probaría una función que contiene una llamada a input usando pytest ? No quisiera forzar a un probador a ingresar texto muchas veces solo para terminar una ejecución de prueba.

Comando “py.test” vs “pytest”

El comando py.test está fallando en mi caso, mientras que pytest está ejecutando totalmente bien. Yo uso el plugin pytest-flask: platform linux — Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 rootdir: /home/sebastian/develop/py/flask-rest-template, inifile: plugins: flask-0.10.0 Cuando invoco $ py.test obtengo el siguiente error: Traceback (most recent call last): File “/usr/local/lib/python3.5/dist-packages/_pytest/config.py”, line 301, in _getconftestmodules return self._path2confmods[path] KeyError: […]