Considerações de implantação e teste para cargas de trabalho de aplicativos inteligentes
Mantenha um processo de gerenciamento do ciclo de vida do aplicativo (ALM) íntegro para evitar problemas de produção e resolver rapidamente quaisquer regressões.
Determinar sua estratégia de ALM
Garanta que seu processo de desenvolvimento seja eficiente e escalável desenvolvendo uma estratégia abrangente de ALM que inclua controle de versão, integração contínua/implantação contínua (CI/CD) e testes automatizados.
Avalie opções de CI/CD simples a avançado:
- Implantação manual de soluções.
- Implantação automatizada com pipelines amigáveis no Power Platform (sem controle do código-fonte).
- Implantação automatizada + controle do código-fonte do Azure DevOps ou do GitHub do Power Platform tools.
- Teste automatizado da carga de trabalho do aplicativo inteligente como parte do processo de implantação.
Usar soluções para gerenciamento de ambiente
Manter ambientes separados para desenvolvimento, teste e produção. Essa prática ajuda a isolar problemas e garante que as alterações sejam totalmente testadas antes de chegarem aos usuários.
Use soluções para mover plug-ins criados no Microsoft Copilot Studio em diferentes ambientes.
Principais recomendações e considerações:
- Trabalhar dentro do contexto das soluções: garanta que todo o desenvolvimento seja conduzido dentro da estrutura das soluções.
- Soluções separadas para implantação independente: crie soluções distintas somente quando houver a necessidade de implantar componentes de forma independente.
- Compreender as limitações: entenda as limitações da implantação automatizada e avalie quais configurações precisam ser definidas ou atualizadas manualmente após a implantação, como integração do Application Insights, canais implantados e configurações de segurança.
- Usar um editor e prefixo personalizados: implemente um editor e um prefixo personalizados para melhorar a organização e o gerenciamento.
- Usar variáveis de ambiente: use variáveis de ambiente para configurações e segredos que variam entre ambientes.
- Exportar e implantar como soluções gerenciadas: exporte e implante soluções como gerenciadas, exceto ao configurar um ambiente de desenvolvimento.
- Restringir personalizações ao desenvolvimento: evite fazer personalizações fora do ambiente de desenvolvimento.
- Automatizar processos de ALM: automatize o ALM para controle do código-fonte e implantações automatizadas.
Exemplo
Este exemplo fornece uma visão geral da estratégia de implantação para uma carga de trabalho de aplicativo inteligente e descreve as funções e os processos associados a cada ambiente: Desenvolvimento (Dev), Teste (Test), Garantia de Qualidade (QA) e Produção (Prod).
Ambiente de desenvolvimento (Desenvolvimento):
- Finalidade: para a criação inicial e personalização da solução.
- Atividades: os desenvolvedores criam e modificam componentes como aplicativos, fluxos e agentes. Todas as personalizações e configurações são executadas aqui.
-
Principais práticas:
- Use um editor e um prefixo personalizados para todos os componentes.
- Implemente variáveis de ambiente para configurações e segredos.
- Certifique-se de que todas as alterações sejam controladas por versão e documentadas.
Ambiente de teste (Teste):
- Finalidade: para validação preliminar e testes da solução desenvolvida.
- Atividades: as soluções são exportadas do ambiente de desenvolvimento como soluções gerenciadas e importadas para o ambiente de Teste. Testes funcionais e de integração são realizados para identificar e resolver problemas com antecedência.
-
Principais práticas:
- Mantenha um ambiente de teste separado para simular cenários do mundo real.
- Use variáveis de ambiente para gerenciar configurações e segredos específicos do Ambiente de teste.
- Automatize os processos de implantação para garantir consistência e repetibilidade.
Ambiente de Garantia da Qualidade (Q.A. ou QA):
- Objetivo: dedicado à garantia de qualidade completa e testes de aceitação do usuário (UAT).
- Atividades: as soluções gerenciadas são exportadas do ambiente de Teste para o ambiente de QA. Testes extensivos, incluindo desempenho, segurança e UAT, são realizados para garantir que a solução atenda a todos os requisitos e padrões.
-
Principais práticas:
- Use variáveis de ambiente para gerenciar configurações e segredos específicos de controle de qualidade.
- Envolva os usuários no UAT para coletar comentários e garantir que a solução atenda às suas necessidades.
- Automatize os processos de teste sempre que possível para aumentar a eficiência e a precisão.
Ambiente de produção (Produção):
- Finalidade: hospeda a versão ao vivo e voltada para o usuário da solução.
- Atividades: após testes de controle de qualidade bem-sucedidos, a solução gerenciada é exportada do ambiente de controle de qualidade e importada para o ambiente de produção. Este ambiente é rigorosamente controlado para garantir estabilidade e confiabilidade.
-
Principais práticas:
- Implante soluções como gerenciadas para evitar alterações não autorizadas.
- Use variáveis de ambiente para gerenciar configurações e segredos específicos da produção.
- Monitore e mantenha a solução para garantir o desempenho ideal e resolver quaisquer problemas prontamente.
Estratégia geral:
- Separação de preocupações: cada ambiente serve a um propósito distinto, garantindo que as atividades de desenvolvimento, teste, controle de qualidade e produção não interfiram umas nas outras.
- Automação: automatize os processos de ALM, incluindo controle do código-fonte, testes e implantações, para aumentar a eficiência e reduzir o risco de erros.
- Consistência: mantenha a consistência entre ambientes usando variáveis de ambiente e scripts de implantação automatizados.
Estabelecer uma estratégia de teste
Certifique-se de ter um plano claro para validar se as cargas de trabalho e as integrações do aplicativo inteligente funcionam conforme o esperado.
Defina sua estratégia de teste para cargas de trabalho de aplicativos inteligentes. Use a Estrutura de Teste para testar em massa as declarações do usuário e validar se o tópico apropriado é acionado ou se a primeira opção "você quis dizer" é a correta em 90% dos casos.
Teste as integrações como parte do teste completo de conversa de ponta a ponta com o recurso de teste de escala da Estrutura de Teste.
Use oKit do Copilot Studio do Power CAT para configurar agentes e testes. Execute testes individuais nas APIs do Copilot Studio (Direct Line) e avalie as respostas do agente em relação aos resultados esperados.
Certifique-se de compreender os requisitos não funcionais, como disponibilidade, conformidade, retenção/residência de dados, desempenho, privacidade, tempo de recuperação, segurança e escalabilidade. Por exemplo, um widget de chat no site deve carregar e iniciar uma conversa dentro de 5 segundos após ser clicado. Da mesma forma, um fluxo da nuvem acionado para retornar informações ao usuário deve fornecer os dados desejados em até 10 segundos.