사용자 지정 UI 테스트 단계
HTML 및 JavaScript 페이지 구성요소를 검색하고 이들이 지원하는 테스트 작업을 식별하여 UI 페이지 및 UI 매크로와 같은 사용자 지정 사용자 인터페이스를 테스트합니다.
사용자 지정 UI 테스트 단계에서는 대상 웹 페이지에서 테스트 가능한 구성요소를 검색하고 식별해야 Automated Test Framework 합니다.
테스트 가능한 구성요소
테스트 가능한 페이지 구성요소는 이러한 특성을 지닌 표준 HTML 및 JavaScript로 구성됩니다.
- 사용자 상호 작용에 의해 설정되거나 클릭됨
- 테스트 가능한 페이지 구성요소를 사용하면 사용자가 값을 설정하거나 클릭할 수 있습니다.
- DOM(문서 객체 모델)에서 액세스할 수 있습니다.
- 테스트 가능한 페이지 구성요소는 DOM에서 액세스할 수 있으며 DOM의 JavaScript 조작을 지원합니다. 사용자 지정 UI 테스트 단계는 섀도 DOM의 페이지 구성요소에 액세스할 수 없습니다.
- JavaScript에 액세스할 수 있음
- 테스트 가능한 페이지 구성요소는 JavaScript에서 액세스할 수 있습니다. 사용자 지정 UI 테스트 단계는 파일 필드와 같이 운영 체제와 직접 상호 작용하거나 Excel 또는 PDF 파일과 같은 비 HTML 컨텐츠를 표시하는 페이지 구성요소에 액세스할 수 없습니다.
- 사용자 지정 UI 테스트에서 제외되지 않습니다.
- 테스트 가능한 페이지 구성요소는 사용자 지정 UI 테스트에서 제외되지 않습니다. Automated Test Framework 다른 테스트 단계 범주로 이미 테스트할 수 있는 페이지 구성요소를 제외하고 기능과 연결된 페이지 구성요소도 제외합니다 ServiceNow AI Platform .
- 페이지 검사기에서 액세스할 수 있음
- 테스트 가능한 페이지 구성요소는 에서 볼 때 결과를 반환해야 합니다.페이지 검사기 테스트 디자이너는 페이지 검사를 사용하여 페이지의 테스트 가능한 구성요소를 식별할 수 있습니다.
- 단추
- 링크
- 페이지 텍스트
- UI 컨트롤
- UI 매크로
- ui_date
- ui_date_time
- ui_reference
- UI 페이지
- 마법사
테스트할 수 없는 페이지 구성요소의 예로는 다음 UI 요소가 있습니다.
| 테스트할 수 없는 이유 | 테스트할 수 없는 페이지 구성요소 |
|---|---|
| 설정 가능하거나 클릭할 수 없음 | 숨겨진 통제 |
| HTML 주석 | |
| div, section 및 span과 같은 HTML 레이아웃 요소입니다. | |
| HTML 스크립트 요소 | |
| DOM에서 액세스할 수 없음 | 대시보드 |
| 이미지 | |
| 목록 | |
| 보고서 | |
| 섀도 DOM | |
| JavaScript에 액세스할 수 없음 | Excel 파일 |
| 파일 필드 | |
| PDF 파일 | |
| 기능임 ServiceNow AI Platform | 플로우 디자이너 |
| 스튜디오 | |
| 모니터 업그레이드 | |
| 다른 테스트 단계 범주로 테스트 가능 | 양식 필드 레이블 |
| 양식 필드 값 | |
| 서비스 카탈로그 | |
| 작업 공간 |
설정 가능한 페이지 구성요소
설정 가능한 구성요소는 텍스트 입력 필드와 같은 동적 값이 있는 UI 요소입니다. 설정 가능한 구성요소는 이러한 테스트 작업 및 테스트 단계를 지원합니다.
| 페이지 검사기 작업 | 사용자 지정 UI 테스트 단계 |
|---|---|
| 구성요소 값 설정 | 구성요소 값 설정(사용자 지정 UI) |
| 구성요소 값 임포트 | 페이지에서 텍스트 어설션(사용자 지정 UI) |
| 구성요소 값 확인(사용자 지정 UI) | |
| 구성요소 사용 안 함 | 구성요소 상태 확인(사용자 지정 UI) |
설정 가능한 구성요소에는 사용자 지정 UI 테스트 단계가 설정할 수 있는 값을 결정하는 데이터 유형 이 있습니다. 예를 들어 특정 기록에 대한 참조를 표시하기 위한 페이지 구성요소는 시스템 ID 값만 표시하는 참조 데이터 유형을 가질 수 있습니다.
- 날짜
- 날짜 시간
- 참조
자세한 내용은 구성요소 데이터 유형 재정의 문서를 참조하십시오.
클릭 가능한 페이지 구성요소
클릭 가능한 구성요소는 사용자가 확인란 또는 라디오 유형의 입력과 같이 클릭하여 상호작용할 수 있는 UI 요소입니다. 클릭 가능한 구성요소는 이러한 테스트 작업을 지원합니다.
| 페이지 검사기 작업 | 사용자 지정 UI 테스트 단계 |
|---|---|
| 구성요소를 클릭합니다. | 구성요소를 클릭(사용자 지정 UI) |
| 구성요소 값 임포트 | 페이지에서 텍스트 어설션(사용자 지정 UI) |
| 구성요소 값 확인(사용자 지정 UI) | |
| 구성요소 사용 안 함 | 구성요소 상태 확인(사용자 지정 UI) |
클릭 가능한 구성요소는 동적 값이 없으므로 데이터 유형이 없습니다.
검색된 페이지 구성요소
Automated Test Framework 테스트하는 각 사용자 지정 UI 페이지에 대해 검색된 페이지 구성요소 목록을 저장합니다. 사용자 지정 UI 테스트 단계는 구성요소 및 구성요소 값 필드에서 검색된 구성요소 목록을 표시합니다.
기본적으로 페이지 구성요소 목록은 정적이며 테스트 디자이너가 수동으로 구성요소 검색을 클릭할 때만 업데이트됩니다. 관리자는 사용자 지정 UI 테스트 단계가 실행될 때마다 시스템 속성을 sn_atf.page_data_capture.enabled 활성화하여 페이지 구성요소 목록을 새로 고칠 수 있습니다. 테스트 설계 중에 이 속성을 활성화하면 테스트 디자이너가 항상 최신 페이지 구성요소 목록에 액세스할 수 있습니다. 테스트 설계가 완료된 후 이 속성을 사용하지 않도록 설정하면 테스트 단계에서 이전에 검색된 페이지 구성요소 목록을 사용할 수 있으므로 테스트를 더 빠르게 실행할 수 있습니다.
ServiceNow AI Platform 검색된 페이지 구성요소 목록을 데이터로 처리하며 업데이트 세트 또는 애플리케이션 파일에 포함하지 않습니다. 한 인스턴스에서 다른 인스턴스로 테스트를 전송할 때 테스트 디자이너는 페이지 구성요소를 수동으로 다시 검색해야 합니다.
설계 고려 사항
사용자 지정 UI 페이지 및 페이지 구성요소를 테스트할 때는 다음 설계 고려 사항을 따르십시오.
- 페이지 검사를 사용하여 테스트 가능한 페이지 구성요소를 식별합니다.
- 페이지 검사기는 사용자 지정 UI 테스트에 사용할 수 있는 페이지 구성요소를 결정합니다. 페이지 검사기에서 사용할 수 없는 페이지 구성요소는 사용자 지정 UI 테스트에 사용할 수 없습니다.
- 테스트할 사용자 지정 UI로 이동
- 기존 테스트 단계를 사용하여 대상 사용자 지정 UI로 이동합니다. 예를 들어, 지식베이스 문서를 테스트하려면 기존 테스트 단계를 사용하여 모듈로 이동하거나 기존 기록을 엽니다. 대부분의 사용자 지정 UI 테스트에서는 기존 테스트 단계 범주를 테스트의 일부로 사용해야 합니다.
- 구성요소 영역을 사용하여 페이지 구성요소 식별
- 구성요소 영역에서는 OR 요소
<section>와<div>같은 구성요소를 포함하는 HTML 레이아웃 요소를 설명합니다. 이 영역은 페이지 레이아웃에 위치를 제공하여 테스트 디자이너가 구성요소를 구별할 수 있도록 도와줍니다. - UI가 아닌 ServiceNow AI Platform 사용자 지정 UI 테스트
- 기능 Automated Test Framework 의 사용자 지정 UI 테스트를 방지합니다 ServiceNow AI Platform . 예를 들어 대시보드나 그래픽 디자이너는 테스트할 수 없습니다. 대신 사용자 지정 UI 페이지와 요소의 유효성을 검사하는 테스트를 빌드하면 이러한 사용자 인터페이스를 직접 제어할 수 있습니다.
- HTML 속성을 사용하여 페이지 구성요소 테스트 속성을 재정의합니다.
- 에 특정한 HTML 속성을 사용하여 특정 페이지 구성요소의 테스트 속성을 변경합니다 Automated Test Framework. 구성요소 테스트 작업 재정의 문서를 참조하십시오.
- 테스트를 다른 인스턴스로 이동할 때 페이지 구성요소를 다시 검색합니다.
- 사용자 지정 UI 테스트 단계는 UI 구성요소를 메타데이터로 저장하지 않습니다. 테스터는 인스턴스 간에 테스트를 이동할 때 페이지 구성요소를 수동으로 다시 검색해야 합니다.
사용자 지정 UI 테스트 예
검색된 구성요소 목록을 사용하여 사용자 지정 UI 테스트 단계를 설계할 수 있습니다. 예를 들어, 지식베이스 문서에 대한 검토 및 코멘트를 테스트한다고 가정해 보겠습니다. 지식베이스 문서에는 테스트하기 위해 사용자 지정 UI 단계가 필요한 여러 페이지 구성요소가 포함되어 있습니다.
- 문서 뷰 수입니다.
- 문서를 유용함으로 표시하는 버튼입니다.
- 의견을 남길 텍스트 영역입니다.
- 모듈로 이동합니다. "Knowledge" 애플리케이션에서 "게시됨" 모듈로 이동합니다.
- 기존 기록을 엽니다. ID가 "Knowledge: KB0011110"인 "Knowledge" 양식을 엽니다.
- UI 작업을 클릭합니다. "지식" 양식에서 UI 작업 "문서 보기"를 클릭합니다.
- 페이지에서 텍스트를 어설션합니다(사용자 지정 UI). 페이지에 '개발자' 텍스트가 있음을 어설션합니다.
- 구성요소 값 설정(사용자 지정 UI). 페이지의 구성요소를 다음과 같이 설정합니다. '텍스트 영역 <textarea> [article_comments]' = 다른 곳에 있는 문서에 대한 URL이 아닌 실제 문서로 업데이트합니다.
- 구성요소를 클릭(사용자 지정 UI). 구성요소 클릭: "버튼 <button>: 설명".
- 페이지에서 텍스트를 어설션합니다(사용자 지정 UI). '다른 곳에서 문서에 대한 URL이 아닌 실제 문서로 업데이트합니다.' 텍스트가 페이지에 있는지 어설션합니다.
사용자 지정 UI 구성요소 버전 및 순서
사용자 지정 UI 테스트 단계에서 구성요소를 선택하면 사용자 지정 UI 버전이 나타날 수 있습니다. 중복된 구성요소가 여러 개인 경우 구성요소의 순서가 표시됩니다.
- 사용자 지정 UI 버전은 사용자 지정 UI 버전이 서로 다른 구성요소가 두 개 이상 있는 경우에만 표시됩니다.
- 구성요소 드롭다운 메뉴에 중복된 구성요소가 있는 경우에만 순서가 표시됩니다. 표시된 순서에 따라 모호성을 해소할 수 있습니다.
- 서로 다른 버전에서 중복된 구성요소가 여러 개 있는 경우 사용자 지정 UI 버전과 순서가 모두 표시됩니다.
구성요소 식별
<button sn-atf-id="consistentValue">Test</button>
ATF 구성요소 식별 개선
페이지 영역 열에 포함된 레이블 경로를 사용하여 구성요소를 식별합니다. 릴리스부터 Romesn_atf.element.use_label_path 속성은 기본적으로 true로 설정되었습니다.
구성요소에 sn-atf-area 속성이 있는 경우 페이지 영역 열에 sn-atf-area 값이 표시됩니다. sn-atf-area 속성이 없으면 해당 구성요소의 레이블 경로가 페이지 영역 열에 표시됩니다.
sn-atf-area 속성 또는 레이블 경로가 없는 경우 값이 기본값으로 표시됩니다.목록에서 필요한 구성요소를 선택하고 제출을 클릭하면 테스트 단계에 대한 설명도 자세한 내용으로 업데이트됩니다.