Articles of prueba 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 […]

¿Es posible probar solo funciones específicas con doctest en un módulo?

Estoy tratando de entrar a las pruebas en Python usando el módulo doctest. En el momento que hago Escribe las pruebas para las funciones. Implementar el código de funciones. Si las pruebas pasan, escriba más pruebas y más código. Cuando la función haya terminado, pase a la siguiente función que se va a implementar. Entonces, […]

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.

¿Cómo cambiar el perfil de Firefox con Selenium, sin crear instancias de un nuevo controlador?

Intentando encontrar una manera de cambiar el perfil activo en un controlador de Selenium Firefox. Esta pregunta sobre varios perfiles de Firefox indica que es posible crear y usar múltiples perfiles. Sin embargo, sería mejor si hubiera alguna forma de cambiar el perfil activo de Firefox dentro de la sesión del controlador, en lugar de […]

caer en una sesión interactiva para examinar una prueba de unidad fallida

Me gustaría poder ingresar a una sesión interactiva, preferiblemente con IPython, si falla una prueba de unidad. ¿Hay una forma fácil de hacer esto? edición : por “sesión interactiva” me refiero a un REPL de Python completo en lugar de a una shell pdb. editar editar : Como explicación adicional: me gustaría poder iniciar una […]

En Python, ¿cuál es un buen patrón para deshabilitar cierto código durante las pruebas unitarias?

En general, quiero desactivar el menor código posible, y quiero que sea explícito: no quiero que el código que se está probando decida si es una prueba o no, quiero que la prueba diga ese código “hey, BTW , Estoy haciendo una prueba de unidad, ¿puede por favor no hacer su llamada a solr, en […]

¿Cómo deshabilitar múltiples complementos en pytest.ini?

Tengo pruebas dentro del mismo repository (archivos pytest.ini separados) que requieren diferentes complementos de pytest. ¿Cómo puedo deshabilitar varios complementos en pytest.ini sin desinstalarlos? https://docs.pytest.org/en/latest/plugins.html#findpluginname addopts = –nomigrations –reuse-db -s -p no:pytest-splinter funciona bien, pero también quiero desactivar pytest-django y pytest-bdd para una de las suites de prueba. ¿Cómo puedo hacer eso? He intentado: addopts […]

Tiempo simulado en un contexto para crear modelos con un campo DateTimeField con auto_now_add = True

Me gustaría simular la sincronización para poder establecer cierta hora en un campo de tipo DateTimeField con auto_now_add=True durante mis pruebas, por ejemplo: class MyModel: … created_at = models.DateTimeField(auto_now_add=True) … class TestMyModel(TestCase): … def test_something(self): # mock current time so that `created_at` be something like 1800-02-09T020000 my_obj = MyModel.objects.create() # and here my_obj.created_at == 1800-02-09T000000 […]

Simulacro mágico assert_called_once vs assert_called_once_with con un comportamiento extraño

Estoy notando un comportamiento extraño con assert_called_once y assert_called_once_with en python. Esta es mi verdadera prueba simple: Módulo de archivo / a.py from .b import B class A(object): def __init__(self): self.b = B(“hi”) def call_b_hello(self): print(self.b.hello()) Módulo de archivo / b.py class B(object): def __init__(self, string): print(“created B”) self.string = string; def hello(self): return self.string […]

ID de objeto django incrementan entre pruebas unitarias

Estoy usando Django 1.2.3-3 + squeeze1 en Debian squeeze con PostgreSQL 8.4.7-0squeeze2 (aunque no creo que PostgreSQL sea relevante aquí), y ejecuto pruebas de unidad de Django basadas en unittest con el siguiente setUp y tearDown def setUp(self): print “running setup” self.c = Client() self.user = User.objects.create_user(‘faheem’, ‘faheem@email.unc.edu’, ‘foo’) self.logged_in = self.c.login(username=’faheem’, password=’foo’) settings.MEDIA_ROOT=’/tmp/’ #settings.ZIP_UPLOAD=’/var/tmp/zip/’ […]