Articles of pruebas de

Framework de prueba Python con soporte de fallas no fatales

Estoy evaluando “marcos de prueba” para pruebas automatizadas del sistema; hasta ahora estoy buscando un marco de python. En py.test o nose no puedo ver algo como las macros EXPECT que conozco en el marco de pruebas de google. Me gustaría hacer varias afirmaciones en una prueba sin abortar la prueba en el primer fracaso. […]

¿Deshabilitando el informe de cobertura de la nariz a STDOUT cuando el informe HTML está habilitado?

Estoy usando nose (a través de django-nose ) con el complemento de cobertura para verificar la cobertura de prueba de mi proyecto Django. He configurado la nariz para generar un informe de cobertura HTML en cada ejecución de prueba: NOSE_ARGS = [ ‘–with-coverage’, ‘–cover-package=foot’, ‘–cover-html’, ‘–cover-html-dir=cover’, ] Ahora, quiero deshabilitar el informe de cobertura de […]

Cómo probar un punto final de API con Django-rest-framework utilizando Django-oauth-toolkit para la autenticación

Tengo un conjunto de vistas / enrutador Django-rest-framework para definir un punto final de API. El conjunto de vistas se define como tal: class DocumentViewSet(viewsets.ModelViewSet): permission_classes = [permissions.IsAuthenticated, TokenHasReadWriteScope] model = Document Y el enrutador se define como router = DefaultRouter() router.register(r’documents’, viewsets.DocumentViewSet) con url patrón url(r’^api/’, include(router.urls)) Puedo acceder a este punto final en […]

Documento POST con Django RequestFactory en lugar de datos de formulario

Me gustaría crear una solicitud para probar middleware, pero no quiero que las solicitudes POST asumn siempre que estoy enviando datos del formulario. ¿Hay una manera de configurar request.body en una solicitud generada desde django.test.RequestFactory ? Es decir, me gustaría hacer algo como: from django.test import RequestFactory import json factory = RequestFactory(content_type=’application/json’) data = {‘message’:’A […]

¿Cómo especificar explícitamente una ruta a Firefox para Selenium?

Conseguí Selenium IDE, seguí este post , llegué a python test_default_server.py y se queja de que Firefox no está en mi camino: Please add the directory containing ”firefox.exe” to your PATH environment variable, or explicitly specify a path to Firefox 3 like this: *firefox3c:\blah\firefox.exe Podría cambiar mi variable de entorno PATH, pero prefiero seguir la […]

Comparando tiempos con sub-segundos de precisión

¿Cómo puedo obtener el número de milisegundos desde la época? Tenga en cuenta que quiero que los milisegundos reales, no los segundos se multipliquen por 1000. Estoy comparando tiempos para cosas que toman menos de un segundo y necesitan una precisión de milisegundos. (He mirado muchas respuestas y todas parecen tener un * 1000) Estoy […]

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 […]

¿Puedo restringir la salida de cobertura de la nariz al directorio (en lugar del paquete)?

Mi SUT se ve como: foo.py bar.py tests/__init__.py [empty] tests/foo_tests.py tests/bar_tests.py tests/integration/__init__.py [empty] tests/integration/foo_tests.py tests/integration/bar_tests.py Cuando ejecuto nosetests –with-coverage , obtengo detalles para todo tipo de módulos que preferiría ignorar. Pero no puedo usar la opción foo.py –cover-package=PACKAGE porque foo.py & bar.py no están en un paquete. (Consulte el hilo después de http://lists.idyll.org/pipermail/testing-in-python/2008-November/001091.html para conocer […]

¿Cómo se puede aplicar TDD a las vistas genéricas basadas en la clase Django?

Dado que las vistas genéricas basadas en clase en Django implican un trabajo del marco, me resulta muy difícil trabajar con ellos en un estilo TDD. Ahora uso el TestClient para acceder a la vista desde la stack simulada de http, pero preferiría probar adecuadamente los métodos específicos (es decir, las anulaciones de get_object y […]

¿Cómo mido el tiempo de ejecución de las pruebas unitarias de python con pruebas de detección?

¿Hay alguna manera de cronometrar el tiempo de ejecución de las pruebas individuales de Python que se ejecutan mediante pruebas de detección?