Указатель содержания
Si el atributo en sí necesita ser un objeto simulado, todo lo que se requiere es asigne un objeto MagicMock (o Mock) a ese atributo: instancia.dirección = MagicMock(nombre=‘Dirección’) 16.7.4 constantes burlonas Es muy fácil burlarse de una constante; esto se puede hacer usando @patch() decorador y probando el nombre de la constante y el nuevo valor a utilizar. Este valor puede ser un valor literal como 42 o ‘Hola’ o puede ser un objeto simulado en sí mismo (como un objeto MagicMock). Por ejemplo: @patch(‘mimodulo.MAX_COUNT’, 10) def test_something(self):
La prueba ahora puede usar mymodule.MAX_COUNT
16.7.5 Propiedades simuladas También es posible burlarse de las propiedades de Python. Esto se hace de nuevo usando el @patch decorador pero usando la clase unittest.mock.PropertyMock y el parámetro new_callable. Por ejemplo: @patch(‘mymoule.Car.wheels’, new_callable=mock.PropertyMock) def test_some_property(self, mock_wheels): mock_wheels.return_value = 6
Resto del método de prueba
16.7.6 Generar excepciones con simulacros Un atributo muy útil que se puede especificar cuando se crea un objeto ficticio es el efecto secundario. Si establece esto en una clase o instancia de excepción, entonces la excepción se generará cuando se llame al simulacro, por ejemplo: simulacro = Mock(side_effect=Exception(’¡Boom!’)) imitar() Esto dará como resultado que se genere la Excepción cuando se invoque el simulacro (). 16.7 Uso de Mock y MagicMock 199
popular post
Temas de Pregrado en Ciencias de la Computación Principiantes Guía de Python 3 Programación Juan caza
Прочитайте большеTemas de Pregrado en Ciencias de la Computación Principiantes Guía de Python 3 Programación Juan caza
Прочитайте большеgratis. Para la mayor parte del trabajo que hago en Python, la versión Community es más que adecuado y por lo tanto es la versión que puede descargar e instalar (nota con el Versión profesional, obtiene una prueba gratuita, pero deberá pagar la versión completa versión al final de la versión de prueba o vuelva a instalar la versión de la Comunidad en ese momento).
Прочитайте больше