Articles of python unittest

¿Cómo puedo escribir pruebas unitarias contra el código que usa matplotlib?

Estoy trabajando en un progtwig de python (2.7) que produce una gran cantidad de figuras de matplotlib diferentes (los datos no son aleatorios). Estoy dispuesto a implementar algunas pruebas (utilizando unittest) para estar seguro de que las cifras generadas son correctas. Por ejemplo, almaceno la figura esperada (datos o imagen) en algún lugar, ejecuto mi […]

Cómo enviar solicitudes con JSONs en pruebas unitarias.

Tengo un código dentro de una aplicación Flask que usa JSON en la solicitud, y puedo obtener el objeto JSON así: Request = request.get_json() Esto ha funcionado bien, sin embargo, estoy tratando de crear pruebas unitarias utilizando el módulo de prueba de unidad de Python y tengo dificultades para encontrar una forma de enviar un […]

Tratando de implementar Python TestSuite

Tengo dos casos de prueba (dos archivos diferentes) que quiero ejecutar juntos en un conjunto de pruebas. Puedo hacer que las pruebas se ejecuten simplemente ejecutando python “normalmente”, pero cuando selecciono ejecutar una prueba de python-unit, dice que se ejecutan 0 pruebas. En este momento, solo estoy tratando de obtener al menos una prueba para […]

AttributeError: el objeto ‘módulo’ no tiene atributo ‘pruebas’

Estoy ejecutando este comando: python manage.py test project.apps.app1.tests y provoca este error: AttributeError: el objeto ‘módulo’ no tiene atributo ‘pruebas’ A continuación se muestra mi estructura de directorios. También he añadido app1 a mi configuración de aplicaciones instaladas. Traceback (most recent call last): File “manage.py”, line 10, in execute_from_command_line(sys.argv) File “/home/username/local/dev/local/lib/python2.7/site-packages/django/core/management/__init__.py”, line 385, in execute_from_command_line […]

Unidad de prueba de Python: ejecutar automáticamente el depurador cuando falla una prueba

¿Hay una manera de iniciar automáticamente el depurador en el punto en el que falla un test de unidad? Ahora mismo estoy usando pdb.set_trace () manualmente, pero esto es muy tedioso, ya que necesito agregarlo cada vez y sacarlo al final. Por ejemplo: import unittest class tests(unittest.TestCase): def setUp(self): pass def test_trigger_pdb(self): #this is the […]

Python unittest pasando los argumentos a la clase de prueba principal

Tengo una clase de prueba principal llamada basetestcase () Esto es heredado por todas las clases de prueba class BaseTestCase(unittest.TestCase): driver = None browser = read from command line operatingSystem = read from command line url = read from command line @classmethod def setUpClass(cls): “”” SetUp to initialize webdriver session, pages and other needed objects […]

¿Cómo probar el código asyncio Python 3.4?

¿Cuál es la mejor manera de escribir pruebas unitarias para el código usando la biblioteca de Python 3.4 asyncio ? Supongamos que quiero probar un cliente TCP ( SocketConnection ): import asyncio import unittest class TestSocketConnection(unittest.TestCase): def setUp(self): self.mock_server = MockServer(“localhost”, 1337) self.socket_connection = SocketConnection(“localhost”, 1337) @asyncio.coroutine def test_sends_handshake_after_connect(self): yield from self.socket_connection.connect() self.assertTrue(self.mock_server.received_handshake()) Cuando se […]

Prueba simulada de Python: ¿Es posible simular el valor de los argumentos predeterminados de un método en el momento de la prueba?

Tengo un método que acepta argumentos por defecto: def build_url(endpoint, host=settings.DEFAULT_HOST): return ‘{}{}’.format(host, endpoint) Tengo un caso de prueba que ejerce este método: class BuildUrlTestCase(TestCase): def test_build_url(self): “”” If host and endpoint are supplied result should be ‘host/endpoint’ “”” result = build_url(‘/end’, ‘host’) expected = ‘host/end’ self.assertEqual(result,expected) @patch(‘myapp.settings’) def test_build_url_with_default(self, mock_settings): “”” If only endpoint […]

¿Persisten los cambios de variables entre pruebas en unittest?

¿Cómo puedo persistir los cambios realizados dentro del mismo objeto heredado de TestCase en unitttest? from unittest import TestCase, main as unittest_main class TestSimpleFoo(TestCase): foo = ‘bar’ def setUp(self): pass def test_a(self): self.assertEqual(self.foo, ‘bar’) self.foo = ‘can’ def test_f(self): self.assertEqual(self.foo, ‘can’) if __name__ == ‘__main__’: unittest_main() Es decir: quiero que esas dos pruebas anteriores pasen

Python burlándose de una función de un módulo importado

Quiero entender cómo @patch una función de un módulo importado. Aquí es donde estoy tan lejos. app / mocking.py: from app.my_module import get_user_name def test_method(): return get_user_name() if __name__ == “__main__”: print “Starting Program…” test_method() app / my_module / __ init__.py: def get_user_name(): return “Unmocked User” prueba / mock-test.py: import unittest from app.mocking import test_method […]