Identificar e resolver erros do cliente

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 2 min. de leitura
  • Identifique erros do cliente e resolva-os em scripts do lado do cliente.

    Antes de Iniciar

    Função necessária: administrador

    Por Que e Quando Desempenhar Esta Tarefa

    Quando ocorrem erros de cliente, o Automated Test Framework falha no teste na etapa que estava em execução quando ocorreu o erro. Embora os scripts do lado do cliente possam falhar silenciosamente em erros de JavaScript enquanto os procedimentos estão em execução, o erro ainda pode afetar os dados e o procedimento que está sendo executado. O Automated Test Framework considera esses erros como falhas de validação.

    Procedimento

    1. Navegar até Tudo > Aplicação > Automated Test Framework > Testes e execute um teste do Automated Test Framework que interage com um formulário.
    2. Nos resultados de testes deste teste, verifique se há um resultado de etapa com o seguinte resumo:

      Esta etapa falhou porque o erro do cliente "DETAILED ERROR MESSAGE" foi detectado na página que está sendo testada. Consulte Logs de teste com falha. Para ignorar esses erros na próxima simulação, use os links "Adicionar todos os erros do cliente à lista de avisos/ignorados".

      Este resultado de etapa aparece somente em uma etapa que interage com a IU.

    3. Para identificar e resolver esses erros de script, abra o console do navegador das ferramentas para desenvolvedores na página do Executor de teste do cliente.
      Nota:
      Para obter informações sobre como abrir o console do navegador, consulte o seguinte artigo: http://webmasters.stackexchange.com/questions/8525/how-to-open-the-javascript-console-in-diferentes-browsers
    4. Se você puder ver o erro, tente identificar e solucionar problemas do script do lado do cliente problemático, que pode estar em qualquer uma das seguintes tabelas do sistema de base:
      • ServiceNow Client script
      • Ação de IU
      • Macro de IU (script HTML)
      • Página de IU (script HTML)
      • Política de IU
      • Script da IU
      • Tabelas que estendem as tabelas do sistema base anteriores
    5. Revise o script quanto a erros e, depois de corrigi-los, execute o teste novamente.

    O que Fazer Depois

    Determine a origem do erro do cliente revisando o histórico de versões do script. Se você personalizou um script do sistema de base, é possível que o script tenha novas versões que foram ignoradas durante o upgrade.

    Exemplo de erros do cliente

    Existem vários tipos de erros comuns do cliente.

    Erros de JavaScript do cliente

    Quando um client script causa um erro, o console do navegador exibe um erro semelhante ao exemplo a seguir:

    ***************************************************
    A script has encountered an error in render events
    TypeError: Cannot read property 'id' of undefined
    Script ends. Continuing happily
    ***************************************************
    [00:00:00.002] onLoad Modify Comments Label

    Neste exemplo, o client script Modificar rótulo de comentários causou o erro.

    Outros erros de client script

    Qualquer outro tipo de erro de script é relatado diretamente ao console do navegador com qualquer formatação após a ocorrência.

    TypeError: retornos de chamada (ID) é indefinido

    Links de recursos de script por SYS ID

    Em alguns casos, o erro do console fornece um link para o arquivo de recursos de script usando seu SYS ID. Seguir este link pode fornecer contexto para qual script o executou.

    Uncaught ReferenceError: myobj is not defined
        at incident.do?sys_id=12345678901234567890123456789012
    (anonymous) @ incident.do?sys_id=12345678901234567890123456789012  <---- LINK
    

    Permissões de acesso ao script

    Ao identificar scripts problemáticos, certifique-se de que o script tenha permissão para acessar os dados. Verificar:
    • Permissões da regra de controle de acesso para tabelas e campos.
    • Permissões de acesso à aplicação se o script acessar aplicações em um escopo privado.
    • Permissões de separação de domínio se a separação de domínio estiver configurada.