Articles of unidad de prueba de

Prueba de unidad de tornado con sockets web: ¿qué pasa con el contexto de stack?

He estado usando el servidor de tornado por un tiempo y tengo que decir que me gusta. Tengo un servidor de tornado (que se ejecuta en python3.2) que maneja solicitudes de http y socket web. Lo que quiero hacer es escribir algunas pruebas unitarias (que usan sockets web) con ws2py (que implementa un cliente ws […]

¿Es posible usar Nose para ejecutar una prueba varias veces, al mismo tiempo?

¿Es posible usar la nose para ejecutar una sola prueba simultáneamente (a través de múltiples procesos) y agregar el resultado en un solo resultado de aprobación / falla? Tenemos la necesidad de ejecutar la misma prueba varias veces al mismo tiempo para garantizar que el locking de recursos no se vea afectado. Si la nariz […]

Prueba de scripts de Python

¿Cómo puedo probar la salida STDOUT de un script de Python con un marco de prueba como doctest, unittest, nose, etc.? Por ejemplo, digamos que la ejecución de mi script “todo.py –list” debería devolver “sacar la basura”. He leído a alguien que separa la parte de impresión STDOUT de la secuencia de comandos que genera […]

AssertionError “afirma no IOLoop.initialized ()” al probar la aplicación Tornado con AsyncIOMainLoop

Tengo algunos problemas con la escritura de pruebas con AsyncHTTPTestCase para la aplicación Tornado existente que usa el bucle de eventos asyncio. Aquí preparo modelo corto donde puedo reproducir el tema: app.py from tornado.platform.asyncio import AsyncIOMainLoop import asyncio import tornado.web class MainHandler(tornado.web.RequestHandler): async def get(self, *args, **kwargs): self.write(“200 OK”) async def post(self, *args, **kwargs): self.write(“201 […]

Pruebas unitarias de un matraz principal de aplicación.

Todos, estoy escribiendo una aplicación de matraz que depende de frask-principal para administrar los roles de los usuarios. Me gustaría escribir algunas pruebas unitarias simples para verificar a qué vistas puede acceder un usuario. Se publica un ejemplo de código en pastebin para evitar saturar esta publicación. En resumen, defino algunas rutas, decorándolas de modo […]

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.

StringIO de Python no hace bien con las declaraciones `with`

Necesito tempfile y StringIO parecía perfecto. Solo que todo esto falla en una omisión: In [1]: from StringIO import StringIO In [2]: with StringIO(“foo”) as f: f.read() –> AttributeError: StringIO instance has no attribute ‘__exit__’ ¿Cuál es la forma habitual de proporcionar información enlatada en lugar de leer archivos con contenido no determinista?

¿Probar el inicio de sesión y la autenticación del matraz?

Estoy desarrollando una aplicación Flask y utilizando Flask-security para la autenticación de usuarios (que a su vez utiliza Flask-login debajo). Tengo una ruta que requiere autenticación, /user . Estoy tratando de escribir una prueba de unidad que prueba que, para un usuario autenticado, esto devuelve la respuesta adecuada. En mi prueba de unidad, estoy creando […]

Cómo utilizar un controlador de servidor de tornado de prueba que autentica a un usuario a través de una cookie segura

¿Cómo puedo escribir una prueba de unidad para un controlador de tornado que autentica a un usuario a través de una cookie segura? Aquí está el código (y el código sudo) para una prueba ficticia que me gustaría hacer pasar. Estoy usando Tornado 3.1. from tornado.web import Application, RequestHandler from tornado.escape import to_unicode, json_decode, json_encode […]

Usando SimpleHTTPServer para pruebas unitarias

Estoy escribiendo un módulo de Python que envuelve una determinada API de servicios web. Todo es REST, por lo que es relativamente sencillo de implementar. Sin embargo, encontré un problema cuando se trata de pruebas unitarias: como no ejecuto los servicios para los que hice este módulo, no quiero atacarlos, pero al mismo tiempo, necesito […]