testing Pacote

Módulos

about
dialog_test_client
dialog_test_logger
storage_base_tests

Testes base que todos os provedores de armazenamento devem implementar em seus próprios testes. Eles lidam com as declarações baseadas em armazenamento internamente.

Todos os testes retornarão true se as declarações forem aprovadas para indicar que o código foi executado até a conclusão, passando declarações internas. Portanto, todos os testes usando esses testes estáticos devem verificar estritamente se o método retorna true.

Observação: o Python não pode ter ditados com propriedades com um valor None como outros SDKs podem ter propriedades com valores nulos. Por isso, os testes storeItem têm "e_tag: *" em que os testes nos outros SDKs não têm. Isso também nos fez comentar algumas partes desses testes em que afirmamos que "e_tag" é None pelo mesmo motivo. Uma e_tag nula deve funcionar como uma * e_tag ao gravar, tanto quanto os adaptadores de armazenamento são concerados, portanto, isso não deve causar problemas.

:Exemplo: 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

Classes

DialogTestClient

Um cliente para testar caixas de diálogo isoladamente.

Crie um DialogTestClient para testar uma caixa de diálogo sem precisar criar um 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")

Para a ID do canal, use 'emulador' ou 'test' se não tiver certeza do canal que você está direcionando. Caso contrário, é recomendável que você use a ID para os canais que seu bot usará e escreva um caso de teste para cada canal. Ou uma instância do adaptador de teste pode ser usada. :type channel_or_adapter: Union[str, TestAdapter] :p aram target_dialog: a caixa de diálogo a ser testada. Essa será a caixa de diálogo raiz do cliente de teste. :type target_dialog: Dialog :p aram initial_dialog_options: (Opcional) argumentos adicionais para passar para a caixa de diálogo que está sendo iniciada. :type initial_dialog_options: object :p aram middlewares: (Opcional) O adaptador de teste a ser usado. Se esse parâmetro não for fornecido, o cliente de teste usará um TestAdapter padrão. :type middlewares: List[Middleware] :p aram conversation_state: (Opcional) Uma instância ConversationState a ser usada no cliente de teste. :type conversation_state: ConversationState

DialogTestLogger

Um middleware para gerar atividades de entrada e saída como cadeias de caracteres json para o console durante testes de unidade.

Inicialize uma nova instância do agente de teste de caixa de diálogo.

default to logging.getLogger(name).info. :type log_func: Callable[..., None] :p aram json_indent: um recuo para saída json, o recuo padrão é 4. :type json_indent: int :p aram time_func: uma função de tempo para registrar intervalos de tempo, padrão para time.monotonic. :type time_func: Callable[[], float]

StorageBaseTests