Compartilhar via


Aplicação de teste do SDK dos conectores Copilot

O ficheiro executável GraphConnectorAgentTest é um utilitário de teste para o conector personalizado. Não cria ligações nem adiciona dados ao índice da Microsoft. O utilitário de teste é executado no computador onde instalou o agente e não se liga a recursos externos, exceto a origem de dados que faz parte do teste. Pode encontrar a aplicação de teste na pasta TestApp na pasta de instalação do agente do conector do Microsoft Graph.

Atualize os seguintes ficheiros de configuração para utilizar este utilitário de teste:

  • ConnectionInfo.json: este ficheiro contém todas as informações sobre a ligação – o ID do conector que identifica o conector personalizado para o qual esta ligação está a ser criada, o URL da origem de dados, credenciais para aceder à origem de dados, o esquema associado à ligação e parâmetros adicionais para a ligação. Este ficheiro de configuração está na pasta Config da aplicação de teste.

  • CustomConnectorPortMap.json: depois de criar o conector personalizado, adicione o mapeamento do ID do conector e a porta em que está a ser executado neste ficheiro. Este ficheiro está na pasta de instalação do agente do conector do Microsoft Graph.

    Captura de ecrã do mapeamento de portas no ficheiro CustomConnectorPortMap.json.

    Observação

    Pode adicionar vários IDs de conector e as respetivas informações de porta correspondentes a este ficheiro através do formato ID> do <Conector:<Porta>. Cada conector exclusivo deve estar em execução numa porta diferente.

  • Manifest.json: o ficheiro de manifesto é necessário para identificar um conector e a respetiva configuração ao publicar uma ligação através do Administração Microsoft 365 Center. Atualize este ficheiro de manifesto para o utilizar para validação nesta aplicação de teste. Este ficheiro está na pasta Config da aplicação de teste.

    Indique os detalhes do manifesto no seguinte formato:

    {
      // This is the unique connector ID/provider ID.
      "connectorId": "<ConnectorGuid>",
    
      // This is a list of all supported auth types. Remove the ones that the connector does not support.
      "authTypes": [ "Windows", "Basic", "Anonymous", "OAuth2ClientCredentials" ],
    
      // The list of additional crawl types that the connector supports in addition to full and periodic full crawl. This is an optional field.
      "additionalCrawlsSupported": [ "Incremental" ]
    }
    
    
    • connectorId deve ser um GUID. Este campo é o mesmo que ConnectorUniqueId no ficheiro de implementação do Connector Info Service ou no GUID que definir.
    • Os AuthTypes têm de ser uma matriz não vazia com um ou mais dos seguintes tipos: Anonymous, Basic, Windows, OAuth2ClientCredentials.
    • additionalCrawlsSupported é opcional; Pode definir tipos de pesquisa para além da pesquisa completa e periódica, consoante a implementação e o suporte da origem de dados. Atualmente, apenas Incremental a pesquisa está disponível como opção.

Cenários de teste

O utilitário de teste tem cinco opções:

  • Testar a conectividade ao serviço de conector: verifica se o utilitário de teste pode ligar-se ao conector especificado no ConnectionInfo.json através da porta especificada para esse ID de conector no CustomConnectorPortMap.json.

Captura de ecrã da saída do utilitário de teste a mostrar o primeiro cenário de teste concluído

  • Testar o fluxo de criação da ligação (ValidateAuthentication, ValidateCustomConfiguration, GetDataSourceSchema APIs): valida os métodos especificados em ConnectionManagementService. Invoca cada um dos métodos e apresenta os resultados na consola do .

Captura de ecrã da saída do utilitário de teste a mostrar o segundo cenário de teste concluído

  • Validar Manifesto: valida o conteúdo de manifest.json. Verifica se as APIs relacionadas com as informações fornecidas no manifesto estão implementadas. A aplicação de teste devolve o manifesto atualizado após a validação. Utilize este manifesto validado para testes e utilização adicionais.

Captura de ecrã da saída do utilitário de teste a mostrar o terceiro cenário de teste concluído

  • Testar a pesquisa de origens de dados com ligação simulada: testa os métodos no ConnectorCrawlerService. Invoca a pesquisa com a agenda especificada em ConnectionInfo.json e imprime a status da pesquisa em curso ou da última pesquisa concluída a cada minuto. Quando a primeira pesquisa for concluída com êxito, apresenta a mensagem de que a pesquisa foi concluída e a plataforma continua em execução para acionar pesquisas adicionais no intervalo especificado no ConnectionInfo.json. Se especificar uma frequência de pesquisa incremental no ficheiro ConnectionInfo.json, aciona a pesquisa incremental após a primeira pesquisa completa.

Captura de ecrã da saída do utilitário de teste a mostrar o quarto cenário de teste concluído

  • Testar o fluxo de publicação da ligação ponto a ponto: valida todo o fluxo desde a criação da ligação personalizada até à pesquisa da origem de dados. Ser-lhe-á pedido para fornecer entradas na mesma sequência que o fluxo de publicação da ligação do Centro de Administração Microsoft 365. A validação ocorre em todos os passos com base nas suas entradas.

Captura de ecrã da saída do utilitário de teste a mostrar o quinto cenário de teste concluído

Para impedir que o utilitário pesquise a origem de dados, feche e reinicie o ficheiro executável GraphConnectorAgentTest. Em seguida, pode escolher uma opção de teste diferente ou testar novamente uma opção depois de atualizar o código do conector ou os ficheiros de configuração.

Como funciona o ficheiro executável GraphConnectorAgentTest?

Quando abre o ficheiro executável GraphConnectorAgentTest, este lê o ConnectionInfo.json ficheiro de configuração. Depois de selecionar uma das opções de teste, tentará ligar ao conector especificado através da porta indicada no ficheiro de configuração CustomConnectorPortMap. Depois de ligar, a plataforma chama os métodos relevantes.

Quando testar o fluxo de criação da ligação ou a pesquisa da origem de dados, especifique as credenciais para aceder à origem de dados no ficheiro de configuração ConnectionInfo.json. A plataforma lê as credenciais e transmite-as ao conector para aceder à origem de dados. Desde que mais ninguém tenha acesso ao ficheiro de configuração ConnectionInfo.json, as credenciais são seguras.