클라이언트 오류 식별 및 해결

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기3분
  • 클라이언트 오류를 식별하고 클라이언트 측 스크립트에서 해결합니다.

    시작하기 전에

    필요한 역할: 관리자

    이 태스크 정보

    클라이언트 오류가 발생하면 오류가 Automated Test Framework 발생했을 때 실행 중이던 단계의 테스트에 실패합니다. 절차가 실행되는 동안 JavaScript 오류가 발생하면 클라이언트 측 스크립트가 자동으로 실패할 수 있지만, 이 오류는 여전히 데이터 및 실행 중인 프로시저에 영향을 줄 수 있습니다. Automated Test Framework는 이러한 오류를 유효성 검사 실패로 간주합니다.

    프로시저

    1. 다음으로 이동 모두 > 애플리케이션 > Automated Test Framework > 테스트 및 폼과 상호 작용하는 Automated Test Framework 테스트를 실행합니다.
    2. 이 테스트에 대한 테스트 결과에서 다음 요약이 포함된 단계 결과를 확인합니다.

      테스트 중인 페이지에서 클라이언트 오류 "DETAILED ERROR MESSAGE"가 감지되어 이 단계가 실패했습니다. 실패한 테스트 로그를 참조하십시오. 다음 테스트 실행에서 이러한 오류를 무시하려면 '경고/무시된 목록에 모든 클라이언트 오류 추가' 링크를 사용합니다.

      이 단계 결과는 UI와 상호작용하는 단계에만 나타납니다.

    3. 이러한 스크립트 오류를 식별하고 해결하려면 클라이언트 테스트 러너 페이지에서 개발자 도구 브라우저 콘솔을 엽니다.
      주:
      브라우저 콘솔을 여는 방법에 대한 자세한 내용은 다음 문서를 참조하세요. http://webmasters.stackexchange.com/questions/8525/how-to-open-the-javascript-console-in-different-browsers
    4. 오류가 표시되면 다음 기본 시스템 테이블에 있을 수 있는 문제가 있는 클라이언트 측 스크립트를 식별하고 문제를 해결해 보십시오.
      • ServiceNow 클라이언트 스크립트
      • UI 작업
      • UI 매크로(HTML 스크립트)
      • UI 페이지(HTML 스크립트)
      • UI 정책
      • UI 스크립트
      • 앞의 기본 시스템 테이블을 확장하는 테이블
    5. 스크립트에서 오류를 검토하고 오류를 수정했으면 테스트를 다시 실행합니다.

    다음에 수행할 작업

    스크립트 버전 기록을 검토하여 클라이언트 오류의 원인을 확인합니다. 기본 시스템 스크립트를 사용자 지정한 경우 스크립트에 업그레이드 중에 건너뛴 새 버전이 있을 수 있습니다.

    클라이언트 오류 예

    일반적인 클라이언트 오류에는 여러 유형이 있습니다.

    클라이언트 JavaScript 오류

    클라이언트 스크립트에서 오류가 발생하면 브라우저 콘솔에 다음 예시와 유사한 오류가 표시됩니다.

    ***************************************************
    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

    이 예시에서는 클라이언트 스크립트 Modify Comments Label(댓글 레이블 수정)로 인해 오류가 발생했습니다.

    기타 클라이언트 스크립트 오류

    다른 유형의 스크립트 오류는 발생 시 어떤 서식으로든 브라우저 콘솔에 직접 보고됩니다.

    TypeError: 콜백(id)이 정의되지 않았습니다.

    시스템 ID별 스크립트 자원 링크

    경우에 따라 콘솔 오류는 해당 시스템 ID를 사용하여 스크립트 자원 파일에 대한 링크를 제공합니다. 이 링크를 따라가면 스크립트에서 실행한 컨텍스트를 확인할 수 있습니다.

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

    스크립트 접근 권한

    문제가 있는 스크립트를 식별하는 동안 스크립트에 데이터 접근 권한이 있는지 확인하십시오. 확인:
    • 테이블 및 필드에 대한 접근 제어 규칙 권한입니다.
    • 스크립트가 비공개 범위에서 애플리케이션에 액세스하는 경우 애플리케이션 액세스 권한입니다.
    • 도메인 분리가 구성된 경우의 도메인 분리 권한입니다.