Considerações sobre implementação e teste para cargas de trabalho de aplicações inteligentes
Mantenha um processo de gestão do ciclo de vida das aplicações (ALM) íntegro para evitar problemas de produção e resolver rapidamente quaisquer regressões.
Determinar a sua estratégia de ALM
Certifique-se de que o seu processo de desenvolvimento é eficiente e dimensionável ao desenvolver 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 as opções desde CI/CD simples a avançado:
- Implementação manual de soluções.
- Implementação automatizada com pipelines no Power Platform fáceis de utilizar (sem controlo de código fonte).
- Implementação automatizada + controlo de código fonte com o Azure DevOps ou GitHub do Power Platform tools.
- Teste automatizado da carga de trabalho de aplicações inteligentes como parte do processo de implementação.
Utilizar soluções para a gestão de ambientes
Manter ambientes separados para desenvolvimento, teste e produção. Esta prática ajuda a isolar problemas e garante que as alterações são cuidadosamente testadas antes de chegarem aos utilizadores.
Use soluções para mover plug-ins criados no Microsoft Copilot Studio em diferentes ambientes.
Principais recomendações e considerações:
- Trabalhar no contexto de soluções: garanta que todo o desenvolvimento é conduzido na estrutura das soluções.
- Soluções separadas para implementação independente: crie soluções distintas apenas quando houver a necessidade de implementar componentes de forma independente.
- Compreender as limitações: compreenda as limitações da implementação automatizada e avalie que definições precisam de ser definidas ou atualizadas manualmente após a implementação, como a integração do Application Insights, canais implementados e definições de segurança.
- Use um editor e prefixo personalizados: implemente um editor e um prefixo personalizados para melhor organização e gestão.
- Usar variáveis de ambiente: use variáveis de ambiente para definições e segredos que variam entre ambientes.
- Exportar e implementar como soluções geridas: exporte e implemente soluções como geridas, exceto ao configurar um ambiente de programação.
- Restringir personalizações ao desenvolvimento: evite fazer personalizações fora do ambiente de programação.
- Automatizar processos de ALM: considere automatizar a ALM para o controlo de código fonte e implementações automatizadas.
Exemplo
Este exemplo fornece uma descrição geral da estratégia de implementação para uma carga de trabalho de aplicações inteligentes e descreve as funções e os processos associados a cada ambiente: Programação (Dev), Teste (Test), Garantia de Qualidade (QA) e Produção (Prod).
Ambiente de programação (Dev):
- Propósito: para a criação inicial e personalização da solução.
- Atividades: os programadores criam e modificam componentes, como aplicações, fluxos e agentes. Todas as personalizações e configurações são realizadas aqui.
-
Práticas-chave:
- Use um editor e prefixo personalizados para todos os componentes.
- Implemente variáveis de ambiente para definições e segredos.
- Certifique-se de que todas as alterações estão controladas por versão e documentadas.
Ambiente de teste (Test):
- Propósito: para validação preliminar e testes da solução desenvolvida.
- Atividades: as soluções são exportadas do ambiente Dev como soluções geridas e importadas para o ambiente Test. Testes funcionais e de integração são realizados para identificar e resolver problemas precocemente.
-
Práticas-chave:
- Mantenha um ambiente Test separado para simular cenários reais.
- Use variáveis de ambiente para gerir definições e segredos específicos para o ambiente Test.
- Automatize os processos de implementação para garantir consistência e repetibilidade.
Ambiente de Garantia da Qualidade (Q.A. ou QA):
- Propósito: dedicado à garantia de qualidade completa e testes de aceitação do utilizador (UAT).
- Atividades: as soluções geridas são importadas do ambiente Test para o ambiente QA. Testes extensivos, incluindo desempenho, segurança e UAT, são realizados para garantir que a solução satisfaz todos os requisitos e normas.
-
Práticas-chave:
- Use variáveis de ambiente para gerir definições e segredos específicos de QA.
- Envolva os utilizadores no UAT para recolher feedback e garantir que a solução satisfaz as necessidades.
- Automatize os processos de teste sempre que possível para melhorar a eficiência e a precisão.
Ambiente de produção (Prod):
- Propósito: hospeda a versão ao vivo, virada para o utilizador, da solução.
- Atividades: após testes de QA bem-sucedidos, a solução gerida é exportada do ambiente QA e importada para o ambiente Produção. Este ambiente é rigorosamente controlado para garantir estabilidade e fiabilidade.
-
Práticas-chave:
- Implemente soluções como geridas para impedir alterações não autorizadas.
- Use variáveis de ambiente para gerir definições e segredos específicos de produção.
- Monitorize e mantenha a solução para garantir o desempenho ideal e abordar quaisquer problemas prontamente.
Estratégia geral:
- Separação de preocupações: cada ambiente serve a um propósito distinto, garantindo que as atividades de programação, teste, QA e produção não interferem umas com as outras.
- Automatização: automatize processos de ALM, incluindo o controlo de código fonte, testes e implementações, para melhorar a eficiência e reduzir o risco de erros.
- Consistência: mantenha a consistência entre ambientes ao usar variáveis de ambiente e scripts de implementação automatizados.
Estabelecer uma estratégia de teste
Certifique-se de que tem um plano claro para validar se as cargas de trabalho de aplicações inteligentes e as integrações funcionam conforme esperado.
Defina a sua estratégia de teste para cargas de trabalho de aplicações inteligentes. Usa o Estrutura de Teste para testar em massa as expressões dos utilizadores e validar que o tópico apropriado é acionado ou que a primeira opção "quis dizer" é a correta em 90% dos casos.
Integrações de teste como parte do teste de conversa de ponto a ponto completo com a capacidade de teste em escala da Estrutura de Teste.
Use o Kit Power CAT Copilot Studio para configurar agentes e testes. Execute testes individuais em relação às APIs do Copilot Studio (Direct Line) e avalie as respostas de agente em relação aos resultados esperados.
Certifique-se de que compreende os requisitos não funcionais, como a disponibilidade, a conformidade, a retenção/residência de dados, o desempenho, a privacidade, o tempo de recuperação, a segurança e a escalabilidade. Por exemplo, um widget de chat no site deve carregar e iniciar uma conversa dentro de 5 segundos depois de ser clicado. Da mesma forma, um fluxo de cloud acionado para devolver informações ao utilizador deve fornecer os dados pretendidos em 10 segundos.