Solução AEM para testes de interface do usuário personalizados ignorados no Cloud Manager devido ao pacote incorreto de arquivamento de contexto do Docker
Se o Cloud Manager ignorar o Teste de interface do usuário personalizado, mesmo que seus testes sejam executados localmente, o arquivo de contexto do Docker de teste de interface do usuário gerado poderá ser empacotado com os arquivos necessários dentro de um diretório pai em vez de na raiz do arquivo. A verificação da estrutura do arquivo e a atualização da configuração do assembly Maven restaura a detecção de teste no Cloud Manager.
Descrição description
Ambiente
Adobe Experience Manager as a Cloud Service
Problema/Sintomas
Esse problema geralmente aparece quando o Cloud Manager não consegue detectar os arquivos de Opt-in de teste de interface do usuário no arquivo de contexto do Docker gerado.
- A etapa Teste personalizado da interface do usuário mostra uma mensagem semelhante a Os testes de interface do usuário foram ignorados porque nenhum teste foi encontrado no repositório de código-fonte.
- Seus testes de Playwright, Cypress, Selenium ou outros testes de interface do usuário compatíveis são executados localmente, mas nenhuma execução de teste de interface do usuário é exibida no Cloud Manager.
- O arquivo
testing.propertiesexiste no repositório, mas o Cloud Manager ainda ignora os testes. - Você pode confirmar o problema compilando o módulo de testes de interface do usuário e verificando onde
testing.propertiesestá armazenado dentro do arquivo*-ui-test-docker-context.tar.gzgerado. Executartar -tvf target/*-ui-test-docker-context.tar.gz | grep testing.properties. Se o resultado mostrar um caminho comosome-folder/testing.propertiesem vez de apenastesting.properties, o arquivo será empacotado incorretamente. - Você também pode confirmar a configuração verificando se
testing.propertiesestá armazenado ao lado do arquivopom.xmlno módulo de testes de interface do usuário e se contém exatamenteui-tests.version=1.
Resolução resolution
Tente as seguintes etapas para resolver o problema:
- Confirme se o pipeline está usando a ramificação Git correta para o módulo de testes de interface do usuário. O pipeline deve usar a ramificação que contém o módulo
ui.testsetesting.properties. Confirme isso na configuração do pipeline e no resumo de execução do próximo pipeline. - Verifique se
testing.propertiesexiste ao lado do arquivo de módulopom.xmlde testes de interface do usuário e se contém exatamenteui-tests.version=1. Você deve ver o arquivo no módulo correto com o valor necessário. Confirme isso diretamente no repositório. - Crie o módulo de testes de interface do usuário localmente para que o arquivo de contexto do Docker seja gerado. Você deve ver um arquivo terminando em
-ui-test-docker-context.tar.gzno diretório do módulotarget. Confirme se o arquivo gerado usa o classificadorui-test-docker-context. - Inspecione o arquivo gerado e verifique se
testing.propertiesestá armazenado na raiz do arquivo executandotar -tvf target/*-ui-test-docker-context.tar.gz | grep testing.properties. Você deve ver apenastesting.propertiessem nenhum prefixo de pasta pai. Se a saída mostrar um caminho comosome-folder/testing.properties, o arquivo é empacotado incorretamente. Continue com a próxima etapa. - Atualize
assembly-ui-test-docker-context.xmlpara que o contexto do Docker seja empacotado na raiz do arquivo morto. Verifique se o assembly mantém<includeBaseDirectory>false</includeBaseDirectory>e incluitesting.propertiescom os arquivos de nível raiz, comoDockerfileewait-for-grid.sh. Você deve ver os arquivos necessários armazenados no nível superior do arquivamento em vez de dentro de um diretório do wrapper. Confirme recriando o módulo e repetindo a inspeção de arquivamento até quetesting.propertiesapareça na raiz. - Confirme as alterações no pacote, envie-as para a ramificação usada pelo pipeline e execute o pipeline novamente. A etapa
Custom UI Testingdeve ser executada em vez de mostrar uma mensagem ignorada. Confirme isso nos detalhes de execução do pipeline e verifique se os logs de teste da interface do usuário estão disponíveis. - Se os testes agora forem detectados, mas falharem durante a execução, revise os logs de teste da interface do usuário a partir da execução do pipeline e corrija o teste ou os erros específicos da estrutura. O Cloud Manager deve detectar e executar a imagem de teste com sucesso. Confirme verificando se o pipeline mostra uma execução de teste de interface do usuário real em vez de uma etapa ignorada.
Se os sintomas a seguir ocorrerem e as etapas de solução de problemas produzirem os resultados a seguir, envie um tíquete para o Suporte da Adobe: o arquivo mostra testing.properties na raiz, o pipeline está usando a ramificação correta e a Cloud Manager ainda relata que nenhum teste de interface do usuário foi encontrado.
Inclua a lista de arquivamento, o arquivo assembly-ui-test-docker-context.xml, o módulo de testes de interface do usuário pom.xml e a URL de execução do pipeline ao entrar em contato com o suporte.