preloader

January 1, 1 | 2 minutes read
Index of content

Ahora tenemos cuatro pruebas para ejecutar (podríamos ir más lejos, pero esto es suficiente por ahora). Uno de los problemas con este conjunto de pruebas es que hemos repetido la creación del Objeto calculadora al inicio de cada prueba. Si bien esto no es un problema en sí mismo, da como resultado un código duplicado y la posibilidad de futuros problemas en términos de mantenimiento si queremos cambiar la forma en que se crea una calculadora. También puede no ser tan eficiente como reutilizar el objeto Calculadora para cada prueba. Sin embargo, podemos definir un accesorio que se puede ejecutar antes de cada prueba individual se ejecuta la función. Para hacer esto escribiremos una nueva función y usaremos el pytest.fixture decorador en esa función. Esto marca la función como siendo especial y que se puede utilizar como accesorio en una función individual. Las funciones que requieren el accesorio deben aceptar una referencia al accesorio como un argumento a la función de prueba individual. Por ejemplo, para que una prueba acepte un accesorio llamada calculadora; debe tener un argumento con el nombre del accesorio, es decir calculadora. Este nombre se puede usar para acceder al objeto devuelto. Esto es ilustrado a continuación: importar pytest desde calculadora importar Calculadora @pytest.fixture calculadora de definición(): “““Devuelve una instancia de Calculadora””” devolver Calculadora() def prueba_valor_inicial(calculadora): afirmar calculadora.total == 0 def test_add_one(calculadora): calculadora.set(1) calculadora.add() afirmar calculadora.total == 1 def test_subtract_one(calculadora): calculadora.set(1) calculadora.sub() afirmar calculadora.total == -1 def test_add_one_and_one(calculadora): calculadora.set(1) calculadora.add() calculadora.set(1) calculadora.add() afirmar calculadora.total == 2 15.5 Trabajando con PyTest 181

comments powered by Disqus

popular post

Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza

Read More

Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza

Read More

• https://docs.python.org/3/ El sitio principal de documentación de Python 3. Contiene tutoriales, referencias de bibliotecas, guías de configuración e instalación, así como Python cómo-tos • https://docs.

Read More