testing Pacote

Módulos

about
dialog_test_client
dialog_test_logger
storage_base_tests

Testes básicos que todos os provedores de armazenamento devem implementar em seus próprios testes. Eles lidam com as asserções baseadas em armazenamento, internamente.

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

Nota: Python não pode ter ditados com propriedades com um valor Nenhum como outros SDKs podem ter propriedades com valores nulos. Devido a isso, os testes StoreItem têm "e_tag: *" onde os testes nos outros SDKs não. Isso também nos levou a comentar algumas partes desses testes onde afirmamos que "e_tag" é Nenhum pelo mesmo motivo. Um e_tag nulo deve funcionar como um * e_tag ao escrever, na medida em que os adaptadores de armazenamento são conceredos, então 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 ter que 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 o ID do canal, use 'emulador' ou 'teste' se não tiver certeza do canal que está segmentando. Caso contrário, é recomendável que você use o id para o(s) canal(is) 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. Esta será a caixa de diálogo raiz para o cliente de teste. :type target_dialog: Dialog :p aram initial_dialog_options: (Opcional) argumento(s) adicional(is) 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 para usar no cliente de teste. :type conversation_state: ConversationState

DialogTestLogger

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

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

padrão para logging.getLogger(name).info. :type log_func: Callable[..., None] :p aram json_indent: Um recuo para a saída json, o recuo padrão é 4. :type json_indent: int :p aram time_func: Uma função de tempo para registrar períodos de tempo, padrão para time.monotonic. :type time_func: Callable[[], float]

StorageBaseTests