testing Paquete

Módulos

about
dialog_test_client
dialog_test_logger
storage_base_tests

Pruebas base que todos los proveedores de almacenamiento deben implementar en sus propias pruebas. Controlan internamente las aserciones basadas en el almacenamiento.

Todas las pruebas devuelven true si se pasan aserciones para indicar que el código se ejecutó hasta la finalización, pasando aserciones internas. Por lo tanto, todas las pruebas que usan estas pruebas estáticas deben comprobar estrictamente que el método devuelve true.

Nota: Python no puede tener dicts con propiedades con un valor None como otros SDK puede tener propiedades con valores NULL. Por este motivo, las pruebas de StoreItem tienen "e_tag: *" donde las pruebas de los otros SDK no lo hacen. Esto también nos ha provocado comentar algunas partes de estas pruebas en las que afirmamos que "e_tag" es None por la misma razón. Un e_tag null debe funcionar igual que un * e_tag al escribir, en lo que respecta a los adaptadores de almacenamiento concerened, por lo que esto no debe causar problemas.

:Example: async def test_handle_null_keys_when_reading(self): await reset()

    test_ran = await StorageBaseTests.handle_null_keys_when_reading(get_storage())


    assert test_ran

Clases

DialogTestClient

Un cliente para probar diálogos de forma aislada.

Cree un dialogTestClient para probar un cuadro de diálogo sin tener que crear un adaptador completo.

python client = DialogTestClient("test", MY_DIALOG, MY_OPTIONS) reply = await client.send_activity("first message") self.assertEqual(reply.text, "first reply", "reply failed")

En el caso del identificador de canal, use "emulador" o "prueba" si no está seguro del canal que tiene como destino. De lo contrario, se recomienda usar el identificador de los canales que usará el bot y escribirá un caso de prueba para cada canal. O bien, se puede usar una instancia de adaptador de prueba. :type channel_or_adapter: Union[str, TestAdapter] :p aram target_dialog: el cuadro de diálogo que se va a probar. Este será el cuadro de diálogo raíz del cliente de prueba. :type target_dialog: dialog :p aram initial_dialog_options: (Opcional) argumentos adicionales para pasar al cuadro de diálogo que se está iniciando. :type initial_dialog_options: middlewares de :p aram: (Opcional) Adaptador de prueba que se va a usar. Si no se proporciona este parámetro, el cliente de prueba usará un TestAdapter predeterminado. :type middlewares: List[Middleware] :p aram conversation_state: (Opcional) Una instancia conversationState que se va a usar en el cliente de prueba. :type conversation_state: ConversationState

DialogTestLogger

Middleware para generar actividades entrantes y salientes como cadenas json en la consola durante las pruebas unitarias.

Inicialice una nueva instancia del registrador de pruebas del cuadro de diálogo.

el valor predeterminado es logging.getLogger(nombre).info. :type log_func: Callable[..., None] :p aram json_indent: una sangría para la salida json, la sangría predeterminada es 4. :type json_indent: int :p aram time_func: una función de tiempo para registrar intervalos de tiempo, de forma predeterminada time.monotonic. :type time_func: Callable[], float]

StorageBaseTests