You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3683933 by Jeff.Wilson Updated metadata Change 4094604 by Richard.Hinckley Fixing a bug in Match3 with incorrect attempts at unbinding a delegate. Not as much of a code problem as a bad learning example. #jira UE-59621 Change 4099126 by Sungjin.Hong #loc UE4DocKOR Change 4105127 by Sungjin.Hong removed wrong [include] Change 4105128 by Sungjin.Hong #loc UE4DocKor Change 4169203 by Sungjin.Hong #loc UE4DocKOR Change 4201118 by Mitchell.Wilson Initial check-in of 4.20 Release Notes - Major features only. Change 4201313 by Jeff.Wilson misc fixes Change 4201319 by Mitchell.Wilson Adding 4.20 minor release notes. Change 4201528 by Jeff.Wilson misc fixes Change 4216361 by Sungjin.Hong #loc UE4DocKOR moved or deleted Change 4216416 by Sungjin.Hong #loc UE4DocKOR Change 4216563 by Sungjin.Hong #loc UE4DocKOR Change 4217772 by Mitchell.Wilson Adding some missing minor release notes in the Slate and UMG sections. Change 4218292 by Mitchell.Wilson Commenting out Shotgun documentation link and adding a "coming soon" blurb Change 4219358 by Tianmin.Xie #loc UE4DocCHN moved or deleted Change 4219564 by Sungjin.Hong #loc UE4DocKOR Change 4220008 by Jeff.Wilson Reordered top features; updated language for Niagara Change 4220814 by Mitchell.Wilson Updating Niagara landing page and adding new image. Change 4220945 by Mitchell.Wilson Updating page with note pointing to digital humans page and added related page link for digital humans Change 4221079 by Mitchell.Wilson Submitting page and images for Working With Tracks In Sequencer. Change 4221223 by Mitchell.Wilson Checking in updates to Sequence Recorder page and new images. Change 4222174 by Yang.Zhang #loc UE4DocCHN check in 420 Release Note againest INT verison 4218292 (need update againest for latest release note) Change 4222188 by Sungjin.Hong #loc UE4DocKOR moved or deleted Change 4222189 by Yang.Zhang #loc UE4DocCHN 420 Release Note Update against INT 4220008 Change 4222217 by Tianmin.Xie #loc UE4DocCHN moved or deleted Change 4222310 by Yang.Zhang #loc UE4DocCHN 420 Release Note Typo Fixing against INT 4220008 Change 4222335 by Yang.Zhang #loc UE4DocCHN TwinblastBust Update against INT 4220945 Change 4222348 by Yang.Zhang #loc UE4DocCHN SequenceRecorder Update against INT 3866572 Change 4222355 by Yang.Zhang #loc UE4DocCHN SequenceRecorder Update against INT 3244012 Change 4222371 by Yang.Zhang #loc UE4DocCHN Change 4222713 by Sungjin.Hong #loc UE4DocKOR Change 4223218 by Mitchell.Wilson Adding Controlling Anim Instances with Sequencer page and images Change 4223330 by Mitchell.Wilson Minor update to formatting. Change 4223439 by Mitchell.Wilson Submitting new TimeRefactorNotes page and images Change 4224395 by Sungjin.Hong #loc UE4DocKOR moved or deleted Change 4224481 by Yang.Zhang #loc UE4DocCHN 419 Release Note Update against INT 3941748 Change 4224497 by Yang.Zhang #loc UE4DocCHN moved or deleted Change 4228591 by Yang.Zhang #loc UE4DocCHN Localization Edit Against 4221079 Change 4228596 by Yang.Zhang #loc UE4DocCHN Change 4228598 by Yang.Zhang #loc UE4DocCHN Localization Bug Fixing Change 4228600 by Yang.Zhang #loc UE4DocCHN Localization Edit Change 4233224 by Yang.Zhang #loc UE4DocCHN Localization Bug Fixing Change 4233437 by Sungjin.Hong #loc UE4DocKOR Change 4233440 by Sungjin.Hong #loc UE4DocKOR Change 4240164 by Sungjin.Hong #loc UE4DocKOR Change 4242799 by Yang.Zhang #loc UE4DocCHN Localization Editor Change 4243822 by Sam.Deiter Manually moveing these files over from the 4.20 release branch. Change 4257108 by Ben.Zeigler Switch ActionRPG to use IWYU headers Change 4257489 by Sungjin.Hong #loc UE4DocKor Change 4258770 by Mitchell.Wilson Updating filters page and images with 4.20 changes Change 4258956 by Mitchell.Wilson Updating Color Picker doc and images for 4.20 Change 4261325 by Sungjin.Hong #loc UE4DocKOR Change 4261534 by Mitchell.Wilson Updating mobilepreviewer doc for 4.20 changes. Change 4263566 by Robert.Gervais Replacing images to address doc-md tool erros. #UE4Doc #fyi Jeff.Wilson, Mitchell.Wilson Change 4264102 by Yang.Zhang #loc UE4DocCHN Localization Edit Change 4264104 by Yang.Zhang #loc UE4DocCHN Localization Edit Change 4264120 by Yang.Zhang #loc UE4DocCHN Localization Bug Fixing Change 4264799 by paulo.souza Fix ActionRPG main menu logo "action" and "sample" labels were misplaced #fyi sam.deiter #rb none Change 4267571 by Sungjin.Hong #loc UE4DocKOR Change 4268090 by Sungjin.Hong #loc UE4DocKOR Change 4272340 by Mitchell.Wilson Adding all MR pages for 4.20 Change 4273092 by Mitchell.Wilson Updating Mesh Details page for 4.20 Change 4276731 by Mitchell.Wilson Checking in nDisplay doc. Change 4276770 by Jeff.Wilson Updated formatting Change 4276798 by Jeff.Wilson Minor formatting update Change 4276998 by Mitchell.Wilson Checking in nDisplay changes for 4.20 Change 4278693 by Sungjin.Hong #loc UE4DocKOR moved or deleted Change 4279407 by Mitchell.Wilson Adding ScriptingAndAutomation folder and content Change 4279418 by Mitchell.Wilson Updating crumbs Change 4279440 by Mitchell.Wilson Adding INT to file. Change 4280273 by paulo.souza ARPG - Player AI can now use Potions and Skills when possible/necessary Change 4280342 by Mitchell.Wilson Adding blueprint/python switchable content. Change 4282437 by Yang.Zhang #loc UE4DocCHN moved or deleted Change 4282603 by Yang.Zhang Outsourcing 20180814 Change4282681by Yang.Zhang #loc UE4DocCHN English Update Change 4282721 by Yang.Zhang #loc UE4DocCHN Localization Editor 20180807 Change 4282938 by Sungjin.Hong #loc UE4DocKOR Change 4283510 by paulo.souza ARPG - Initial support for consumable items (health and mana potions) Change 4283679 by Mitchell.Wilson Submitting updates to some ScriptingAndAutomation pages and adding HowTos sections. Change 4283941 by Mitchell.Wilson Submitting new page and content Change 4284256 by Mitchell.Wilson Minor updates to fix topic lists Change 4284421 by Mitchell.Wilson Checking in python page and content Change 4284468 by Mitchell.Wilson Minor updates. Change 4284888 by Mitchell.Wilson Adding new page and content Change 4285161 by Mitchell.Wilson Adding new page and content Change 4285387 by Jeff.Wilson minor styling updates Change 4287470 by Mitchell.Wilson Adding new page and content Change 4291477 by Sungjin.Hong #loc UE4DocKOR moved or deleted Change 4291478 by Sungjin.Hong #loc UE4DocKOR Change 4291995 by Sungjin.Hong #loc UE4DocKOR Change 4292193 by Mitchell.Wilson Updating page and content Change 4292827 by Mitchell.Wilson adding digital humans page and content Change 4293098 by Mitchell.Wilson Updating CascadeToNiagara and adding some content Change 4295473 by Sungjin.Hong #loc UE4DocKOR moved or deleted Change 4295612 by Sungjin.Hong #loc UE4DocKOR Change 4295997 by Sungjin.Hong #loc UE4DocKOR Change 4296011 by Sungjin.Hong #loc UE4DocKOR Change 4296954 by Mitchell.Wilson Fixing LODs on one mesh to resolve flicker. Rebuilt lighting #jira UE-58995 Change 4297342 by Mitchell.Wilson Updating copyright text in Match3 credits #jira UE-61819 Change 4298354 by Mitchell.Wilson Updating Photorealistic Character Bust eye material to be consistent with Content Examples setup. #jira UE-59761 Change 4299738 by Yang.Zhang #loc UE4DocCHN moved or deleted Change 4299936 by Sungjin.Hong #loc UE4DocKOR Change 4300185 by Mitchell.Wilson Updating page to 4.20 Change 4300194 by Mitchell.Wilson Updating page and one image Change 4300247 by Jeff.Wilson Fixed publishing errors Change 4300533 by Jeff.Wilson Updates for publishing Change 4300884 by Mitchell.Wilson Updating page and content Change 4301216 by Mitchell.Wilson Updating page and content Change 4301268 by Mitchell.Wilson Updating page and content Change 4301301 by Mitchell.Wilson Updating page and content Change4302195by Mitchell.Wilson Updating page and adding content Change 4303253 by Yang.Zhang #loc UE4DocCHN Localization Edit 20180414 Change 4303325 by Sungjin.Hong #loc UE4DocKOR Change 4303706 by Sungjin.Hong #loc UE4DocKOR Change 4305335 by Mitchell.Wilson Fixing errors on pages in prep for publish Change 4305416 by Mitchell.Wilson Removing Graph Panel section to resolve errors since it was already commented out. Change4305436by Mitchell.Wilson Removing graph panel from commented section to resolve errors Change 4305504 by Mitchell.Wilson Fixing up an image to resolve errors Change 4305576 by Mitchell.Wilson Updated graph panel link to new location. Change 4305778 by Mitchell.Wilson Fixing broken comment Change 4306900 by Sungjin.Hong #loc UE4DocKOR Change 4307010 by Mitchell.Wilson Updating this page to resolve issues on another Change 4307038 by Mitchell.Wilson Removing missing image references, but leaving the descriptions if they ever need to be added back. images are commented out. Change 4307067 by Mitchell.Wilson Removing outdated note to resolve errors. Change 4307073 by Mitchell.Wilson Removing old link that was commented out to resolve errors Change 4307105 by Mitchell.Wilson Removing old image that is no longer used in the new CMS Change 4307127 by Mitchell.Wilson Fixing up comment and removing section that is not used to resolve errors Change 4307254 by Mitchell.Wilson Removing some old URL references that were already commented out to resolve errors. Change 4307277 by Mitchell.Wilson Fixing up incorrect link to resolve errors Change 4307289 by Mitchell.Wilson Fixing up incorrect URL to resovle errors Change 4307291 by Mitchell.Wilson Updating URL for a page that was moved. Change 4307670 by Mitchell.Wilson Fixing up multiple issues to resolve errors Change 4308120 by Mitchell.Wilson Fixing up comments to resolve errors Change 4308165 by Mitchell.Wilson Removing old commented section to resolve errors Change 4308189 by Mitchell.Wilson Removing commented out related pages section to resolve errors. Change4308942by Mitchell.Wilson Removing topic image link to resolve error Change 4309000 by Mitchell.Wilson Fixing up some typos in images to resolve errors Change 4309042 by Mitchell.Wilson Fixing up old URL to resolve errors Change4309060by Mitchell.Wilson Updating URLs to resolve crashing Change 4309073 by Mitchell.Wilson Updating URLs to resolve crash Change 4309085 by Mitchell.Wilson Removing old URL located in a comment to resolve error Change 4309106 by Mitchell.Wilson Updating related pages to resolve errors Change 4309130 by Mitchell.Wilson Fixing topic image to resolve error Change 4309167 by Mitchell.Wilson Remove include to resolve errors Change 4309172 by Mitchell.Wilson Removing include to resolve errors Change 4309183 by Mitchell.Wilson Fixing up table to resolve error Change 4309189 by Mitchell.Wilson Removing old image to resolve errors Change 4310574 by Sungjin.Hong #loc UE4DocKOR Change 4310769 by Sungjin.Hong #loc UE4DocKOR Change 4311446 by Mitchell.Wilson Adding missing image file Change 4312754 by Jeff.Wilson Added new DoF pages and updates Change 4313881 by Sungjin.Hong #loc UE4DocKOR moved or deleted Change 4313999 by Yang.Zhang #loc UE4DocCHN moved or deleted Change 4314037 by Sungjin.Hong corrected some links, tags, and spaces Change 4314071 by Sungjin.Hong #loc UE4DocKOR Change 4314302 by Sungjin.Hong #loc UE4DocKOR Change 4314504 by Mitchell.Wilson Adding missing tutorial image and updating tutorial. #jira UEDOC-7229 Change 4317861 by Sungjin.Hong #loc ?????? -> ?????? Change 4320148 by Mitchell.Wilson Removing comments on topics Change 4320159 by Jeff.Wilson Fixed async gifs Change 4320499 by Mitchell.Wilson Checking in topic images Change 4321330 by Sungjin.Hong #loc UE4DocKOR Change 4321337 by Yang.Zhang Outsourcing 20180821 Change 4321362 by Yang.Zhang #loc UE4DocCHN Localization Bug Fixing 2080828 [CL 4322126 by Mitchell Wilson in Main branch]
267 lines
16 KiB
Plaintext
267 lines
16 KiB
Plaintext
INTSourceChangelist:3782314
|
|
Availability: Public
|
|
Crumbs: %ROOT%
|
|
Title: 스크린샷 비교 툴
|
|
Description: 언리얼 엔진 4 의 자동화 시스템을 통한 스크린샷 비교 방법 개요입니다.
|
|
Type: Overview
|
|
SkillLevel:Intermediate
|
|
Version:4.17
|
|
Parent:Programming/Automation
|
|
related: Engine/Deployment/UnrealFrontend
|
|
Order:
|
|
Tags:Programming
|
|
Topic-image:ScreenshotComparison_Topic.png
|
|
Social-image:ScreenshotComparisonBrowser.png
|
|
|
|
|
|
[TOC(start:2 end:2)]
|
|
|
|
Screenshot Comparison (스크린샷 비교) 브라우저는 QA(품질 보증) 팀이 에디터에서 캡처한 스크린샷을 빠르게 비교할 수 있도록 해주는 툴입니다. 자동화 테스트에서 생성된
|
|
스크린샷을 언리얼 (세션) 프론트엔드 툴에서 스크린샷 히스토리를 유지하며 확인하여 빌드 버전 변화에서 명백히 발생한 렌더링 오류를 찾아낼 수
|
|
있습니다.
|
|
|
|

|
|
[REGION:caption] 에픽 자체 자동화 테스트 프로젝트에서 생성된 스크린샷 테스트입니다. [/REGION]
|
|
|
|
## 스크린샷 캡처 방식
|
|
|
|
스크린샷 테스트 구성 방식은 몇 가지 있으나, 가장 쉬운 방법은 Screenshot Functional Actor (스크린샷 펑셔널 액터)를 사용하거나, 기존 Functional Test(펑셔널 테스트) 도중 스크린샷을 찍는 것입니다.
|
|
|
|
#### 펑셔널 테스트 액터 세팅
|
|
|
|
**Functional Screenshot Test** (펑셔널 스크린샷 테스트) 액터는 카메라를 사용하여 스크린샷을 캡처하기에, 기존 포스트 프로세스 및 카메라 세팅 다수를 공유합니다.
|
|
원하는 스크린샷을 캡처하는 데 사용되는 펑셔널 스크린샷 테스트용 세팅은 아래와 같습니다.
|
|
|
|

|
|
|
|
[REGION:simpletable]
|
|
| 세팅 | 설명 |
|
|
| --- | --- |
|
|
| **Resolution** | 해상도 - 원하는 스크린샷 해상도입니다. 지정하지 않으면 자동화 세팅의 플랫폼 구성 기본 해상도를 사용합니다. |
|
|
| **Delay** | 딜레이 - 스크린샷을 다시 찍을 때까지의 간격입니다. |
|
|
| **Disable Noisy Rendering Features** | 노이지 렌더링 피처 비활성화 - 안티 에일리어싱, 모션 블러, 스크린 스페이스 리플렉션, 눈 순응 (자동 노출), 컨택트 섀도우 기능을 끕니다. 최종 이미지에 노이즈가 많이 껴서 변화를 딱 잡아내기 어렵게 만드는 기능이기 때문입니다. |
|
|
| **Visualize Buffer** | 버퍼 시각화 - 기본 최종 라이팅 씬 이미지 이외에 버퍼 스크린샷을 찍을 수 있습니다. 특정 GBuffer 에 오류가 생겼는지 알아내기 힘든 경우의 테스트를 만들고자 할 때 좋습니다. |
|
|
| **Tolerance** | 허용치 - 허용치에 대한 간략 기본값입니다. 기본적으로 Low 가 사용되는데, 템포럴 안티 에일리어싱으로 인해 모든 픽셀마다 고정적 가변치가 약간 있기 때문입니다. [INCLUDE:#tolerance] |
|
|
| **Tolerance Amount** | 허용량 - 각 채널과 밝기 레벨에 대해, 컬러가 기본적으로 같게 하고자 하는 구역을 제어할 수 있습니다. 일반적으로, 최신 렌더링 기법에서는 에일리어싱 제거를 위해 지속적으로 노이즈를 들이고 있기에 필수입니다. [INCLUDE:#toleranceamt] |
|
|
| **Maximum Local Error** | 최대 로컬 오차 - 컬러 허용치 변화량을 감안한 후에는 국지적으로 허용할 수 있는 오차량을 조절할 필요가 있습니다. 트라이앵글 에지에 픽셀 색을 입히는 방식에 따라 일정량의 픽셀이 허용 수준에서 벗어날 수가 있습니다. Maximum Global Error (최대 글로벌 오차)와 달리 Maximum Local Error (최대 로컬 오차)는 이미지 하위 서브셋에 포커스를 잡는 식으로 작동합니다. 이러한 청크 단위를 로컬 오차와 비교하여, 그렇게 하지 않았으면 글로벌 오차에 묻히고 말았을 중요한 변동 핫 스팟 지역을 찾아냅니다. |
|
|
| **Maximum Global Error** | 최대 글로벌 오차 - 컬러 허용치 번화량을 감안한 후에는 허용할 수 있는 오차 총량을 조절할 필요가 있습니다. 트라이앵글 에지에 픽셀 색을 입히는 방식에 따라 일정량의 픽셀이 허용 수준에서 벗어날 수가 있습니다. |
|
|
| **Ignore Anti-Aliasing** | 안티 에일리어싱 무시 - 켜면, 인접 픽셀에 약간의 시프트와 같은 작업이 일어났을 것으로 간주하고 예상 픽셀 검사 대상으로 삼습니다. |
|
|
| **Ignore Colors** | 컬러 무시 - 켜면, 스크린샷 테스트에 씬의 휘도만 비교합니다. |
|
|
[/REGION]
|
|
|
|
|
|
[COMMENT:none]
|
|
-
|
|
[INCLUDE:#tolerance]
|
|
[EXCERPT:toleranceamt]
|
|
[REGION:simpletable]
|
|
| --- | --- |
|
|
| **RGBA Channels** | RGBA 채널 - RGBA 어느 한 채널에 대한 값을 별도로 설정합니다. |
|
|
| **Min Brightness** | 최소 밝기 - 최소 밝기 허용치입니다. |
|
|
| **Max Brightness** | 최대 밝기 - 최대 밝기 허용치입니다. |
|
|
[/REGION]
|
|
[/EXCERPT:toleranceamt]
|
|
|
|
[EXCERPT:Tolerance]
|
|
* Zero
|
|
* Low
|
|
* Medium
|
|
* High
|
|
* Custom
|
|
[/EXCERPT:Tolerance]
|
|
|
|
-
|
|
[/COMMENT]
|
|
|
|
#### 에디터 개인설정
|
|
|
|
**Editor Preferences** (에디터 개인설정)에서, 배치된 펑셔널 스크린샷 테스트 액터 전부에 대해 비교용으로 캡처할 모든 스크린샷의 기본 해상도를 설정할 수 있습니다.
|
|
**편집** > **에디터 개인설정** > **Automation** (자동화) > **Screenshots** (스크린샷)에서 찾을 수 있습니다.
|
|
|
|
[REGION:lightbox]
|
|
[(w:700)](EditorPreferences_ScreenshotRes.png)
|
|
[/REGION]
|
|
[REGION:caption] 이미지를 클릭하면 원본을 확인합니다. [/REGION]
|
|
|
|
[REGION:note]
|
|
개별 펑셔널 스크린샷 테스트 액터에 스크린샷 해상도를 설정하면 이 값을 덮어씁니다.
|
|
[/REGION]
|
|
|
|
### 펑셔널 스크린샷 테스트 액터
|
|
|
|
**Functional Screenshot Test** (펑셔널 스크린샷 테스트) 액터는 레벨에 배치하여 스크린샷을 캡처한 뒤 언리얼 프론트엔드에서 돌리는 자동화 테스트에서 사용할 수 있도록 해줍니다.
|
|
돌릴 수 있는 스크린샷 테스트는 두 종류가 있는데, 하나는 씬 뷰를 캡처하는 일반 스크린샷이고, 다른 하나는 게임의 유저 인터페이스(UI)를 캡처하는 데 사용되는 것입니다.
|
|
|
|
펑셔널 스크린샷 액터에 접근하려면, **모드** 패널에서 찾아 씬에 끌어 놓으면 됩니다. 펑셔널 스크린샷 테스트 및 Functional UIScreenshot Test(펑셔널 UI 스크린샷 테스트)는
|
|
**Testing** (테스팅) 카테고리 아래에서 찾을 수 있습니다.
|
|
|
|

|
|
|
|
[REGION:imagetable]
|
|
| (w:500) | (w:500) |
|
|
| ---- | ---- |
|
|
| 펑셔널 스크린샷 테스트 | 펑셔널 UI 스크린샷 테스트 |
|
|
[/REGION]
|
|
|
|
|
|
### 다른 펑셔널 테스트의 일부로 스크린샷 찍기
|
|
|
|
독립적으로 스크린샷을 찍는 것 말고도, [펑셔널 테스트](Programming/Automation/FunctionalTesting) 도중 스크린샷을 찍어 다른 스크립트 작동 도중
|
|
스크린샷 비교를 활용할 수도 있습니다.
|
|
|
|
(w:850)
|
|
[REGION:caption] 다른 펑셔널 테스트 도중 스크린샷을 캡처하는 데 사용된 블루프린트 예제입니다. [/REGION]
|
|
|
|
한 가지 염두에 둘 것은, 스크린샷 캡처에 적용되는 [스크린샷 세팅](#펑셔널테스트액터세팅) 커스터마이징이 가능하다는 것입니다. 게임플레이 또는 렌더링 기능 비교용으로 캡처를
|
|
할 때 기본 허용치 세팅을 고려하는 데 사용할 수 있는 유용한 블루프린트 노드가 둘 있습니다.
|
|
|
|
(w:400)
|
|
|
|
**Default Screenshot Options** (기본 스크린샷 옵션) 노드는 게임플레이와 렌더링 용으로 스크린샷 테스트 액터의 기본 **Tolerance** (허용치) 수준을 설정하는 데 좋습니다. 게임플레이 사이의 차이를 캡처할 때, **Gameplay** 노드는
|
|
샷과 버퍼에서 불필요한 노이즈를 끄는 데 사용할 수 있습니다. 구체적으로 렌더링 기능을 테스트할 때는, **Rendering** 노드를 사용해야 하는데, 그렇지 않으면
|
|
펑셔널 스크린샷 테스트 액터의 기본 세팅을 레벨에 배치된 각 인스턴스에 사용할 것이기 때문입니다.
|
|
|
|
|
|
|
|
## 스크린샷 브라우저
|
|
|
|
Screenshot Comparison (스크린샷 비교) 브라우저에는 모든 비교 스크린샷이 채워지며, 새로운 스크린샷을 들여오거나 스크린샷 비교가 실패하면, 이 뷰에서 처리할 수 있습니다.
|
|
이 브라우저에서 실패를 검토하여 올바른 결정을 내릴 수 있으며, 어떠한 피처 변화로 인해 스크린샷의 변화가 생겼는지 확인하거나, 문제가 의심되는 경우
|
|
게임 버그 리포트를 작성할 수 있습니다.
|
|
|
|
스크린샷 비교 브라우저에 접근하려면, 먼저 언리얼 (세션) 프론트엔드를 열어야 합니다. 에디터 안에서 **창** > **개발자 툴** > **세션 프론트엔드** 를 통해 열 수 있습니다.
|
|
|
|
(w:1000)
|
|
[REGION:caption]
|
|
에픽 내부 테스트 프로젝트의 자동화 테스트에 스크린샷 비교 브라우저를 사용한 모습입니다.
|
|
[/REGION]
|
|
|
|
스크린샷을 캡처하면 프로젝트의 폴더 중 **Saved** > **Automation** > **Comparisons** 에 저장됩니다. 필요한 경우 글상자를 통해 저장 위치를 입력할 수
|
|
있습니다.
|
|
|
|
(w:1000)
|
|
|
|
|
|
다수의 테스트를 돌린 후에는, 비교용 이미지가 채워질 것입니다. 소스 컨트롤에 연결된 상태라면 이 이미지를 가지고 할 수 있는 여러가지 작업이 있습니다.
|
|
소스 컨트롤을 사용하지 않는다면 이 대화창 옵션은 나오지 않습니다.
|
|
|
|
[REGION:imagetable]
|
|
| (h:150) | (h:150) |
|
|
| --- | --- |
|
|
| 신규 추가 | 대안으로 대체/추가 |
|
|
[/REGION]
|
|
|
|
[REGION:simpletable]
|
|
| 동작 | 설명 |
|
|
| ------ | ----------- |
|
|
| **Add** | 추가 - 스크린샷을 비교 기준 (ground truth) 폴더에 추가하고 소스 컨트롤에 대기 체인지 리스트로 추가합니다. |
|
|
| **Replace** | 대체 - 비교 기준 데이터 모든 예제를 삭제하고 최신 스크린샷으로 대체한 뒤 새로운 비교 기준 데이터로 삼습니다. |
|
|
| **Add As Alternative** | 대안으로 추가 - 가끔 두 이미지 다 옳을 수가 있습니다. 하드웨어 또는 드라이버 상의 작은 차이로 인해서든가, 아니면 하드워에가 지원하는 익스텐션 때문이든가 할 수도 있습니다. Platform_RHI_ShaderModel 기반 스크린샷만 담기에, 추가적인 보정 작업이 필요할 수 있습니다. 그럴 때 **Add As Alternative** (대안으로 추가) 기능이 쓰입니다. 이미지에 대한 비교 기준 버전을 또 하나 추가하고, 이미지를 비교할 때 시스템에서는 항상 메타데이터를 기반으로 가장 근접하게 일치하는 비교 기준 스크린샷을 고릅니다. 스크린샷이 동일한 디바이스에서 온 것일 경우 이 옵션은 회색으로 비활성화됩니다. |
|
|
[/REGION]
|
|
|
|
[REGION:tip]
|
|
항상 **Delete All Reports** (모든 리포트 삭제) 후 새로운 테스트 세트를 돌리세요. 툴에서는 시간별로 개별 리포트를 쌓기 때문에, 기존에 어플리케이션을 실행했을 때 만들어진 리포트를 정리할 시점을 자동으로 잡기가 애매합니다.
|
|
직접 삭제를 해 줘야 다음 번 테스트를 깨끗한 기반 위에서 돌릴 수 있습니다.
|
|
[/REGION]
|
|
|
|
|
|
### 비교 기준 스크린샷
|
|
|
|
스크린샷 **Ground Truth** (비교 기준) 버전은 옳다고 알고 있는 버전입니다. 스크린샷 비교를 할 때, 나중에 찍은 스크린샷과 이 스크린샷을 비교합니다.
|
|
최신 스크린샷이 여기에 일치하지 않으면, 테스트가 실패합니다.
|
|
|
|
스크린샷 자동화 테스트를 처음 돌릴 때, 메시지 로그 창과 스크린샷 브라우저에 경고가 떠서 새로 찍은 스크린샷을 Ground Truth (비교 기준) 이미지로 추가해야 한다고 알려줍니다.
|
|
|
|
[REGION:imagetable]
|
|
| [REGION:lightbox] [(h:250)](MessageLog_AddNew.png) [/REGION] [REGION:caption] 이미지를 클릭하면 원본을 확인합니다. [/REGION] | [REGION:lightbox] [(h:250)](Warning_AddNew.png) [/REGION] [REGION:caption] 이미지를 클릭하면 원본을 확인합니다. [/REGION] |
|
|
| --- | --- |
|
|
| 메시지 로그 경고 | 스크린샷 브라우저 경고 |
|
|
[/REGION]
|
|
|
|
스크린샷 브라우저 탭에서, **Add New** (신규 추가) 버튼을 클릭하여 비교 기준 이미지를 제출할 체인지 리스트를 생성합니다.
|
|
|
|
(w:1000)
|
|
|
|
[REGION:note]
|
|
**신규 추가** 버튼이 회색으로 비활성화된 경우, 소스 컨트롤에 접속되었는지 확인하세요.
|
|
[/REGION]
|
|
|
|
|
|
## 스크린샷 비교 뷰
|
|
|
|
스크린샷 비교 브라우저에서, 이미지 중 하나를 클릭하면 창이 열려 비교 기준 이미지와 선택한 이미지를 겹쳐 보여줍니다. 서로 비교하며
|
|
차이를 확인하기가 쉬워집니다.
|
|
|
|

|
|
|
|
위 세 장의 이미지는 (좌우 순으로) 다음과 같습니다:
|
|
|
|
* **Ground Truth** (비교 기준) 이미지는 옳다고 알고 있는 이미지입니다.
|
|
* **Difference** (차이)는 두 이미지 사이 차이로, 비교 슬라이더에 사용됩니다.
|
|
* **Incoming** (입력) 이미지는 자동화 테스트를 돌린 이후 최근의 캡처 스크린샷입니다.
|
|
|
|
[REGION:lightbox]
|
|
[(w:600)](OpenComparisonSlider.png)
|
|
[/REGION]
|
|
[REGION:caption] 이미지를 클릭하면 원본을 확인합니다. [/REGION]
|
|
|
|
세 이미지 중 하나를 클릭하면 비교 슬라이더 창이 열립니다. 이 화면의 슬라이더를 끌어보면 비교 기준 이미지와 입력 캡처 이미지를 비교해 볼 수 있습니다.
|
|
|
|
[OBJECT:ComparisonSlider]
|
|
[PARAM:before]
|
|
(w:700)
|
|
[/PARAM]
|
|
[PARAM:after]
|
|
(w:700)
|
|
[/PARAM]
|
|
[/OBJECT]
|
|
|
|
이 예제에서, 옳은 것으로 알고있는 비교 기준 이미지와 최근에 돌린 자동화 테스트에서 캡처한 입력 스크린샷 사이에 눈에 띄는 차이가 있습니다.
|
|
|
|
|
|
## 스크린샷 작업방식
|
|
|
|
1. 우선 스크린샷을 찍는 데 사용하고자 하는 방식을 고릅니다:
|
|
|
|
* 스크린샷 펑셔널 테스트 액터
|
|
* 다른 펑셔널 테스트의 일부로 스크린샷 찍기
|
|
|
|
1. 테스트를 로컬에서 돌리거나 빌드 팜에서 돌릴 때, 첫 스크린샷을 확인해야 한다고 알리는 경고창이 뜹니다.
|
|
|
|
[REGION:lightbox]
|
|
[(w:700)](MessageLogWarning.png)
|
|
[/REGION]
|
|
[REGION:caption] 이미지를 클릭하면 원본을 확인합니다. [/REGION]
|
|
|
|
스크린샷 브라우저에서, **신규 추가** 를 클릭하여 비교 기준 이미지로 추가합니다.
|
|
|
|
[REGION:lightbox]
|
|
[(w:700)](ScreenshotAddNew.png)
|
|
[/REGION]
|
|
[REGION:caption] 이미지를 클릭하면 원본을 확인합니다. [/REGION]
|
|
|
|
[REGION:note]
|
|
다른 플랫폼의 경우, 스크린샷 브라우저에서 네트워크 경로를 지정해 주는 것으로 빌드 팜에서 찍은 초기 스크린샷을 처리하고 해당 플랫폼에서 찍은 스크린샷을 원격에서 확인할 수 있습니다.
|
|
그 화면은 자동화 리포트 상단에 나타납니다.
|
|
[/REGION]
|
|
|
|
1. 다음 번 스크린샷 비교 테스트를 돌릴 때, 스크린샷이 성공 또는 실패합니다. 스크린샷 브라우저를 사용하여 스크린샷 테스트를 선택하고 차이를 비교해 봅니다.
|
|
|
|
[REGION:lightbox]
|
|
[(w:700)](PassFail.png)
|
|
[/REGION]
|
|
[REGION:caption] 이미지를 클릭하면 원본을 확인합니다. [/REGION]
|
|
|
|
실패한 것의 경우, 스크린샷 브라우저 탭에 비교할 수 있도록 자동 표시되어 **Replace** (대체) 또는 비교 기준 이미지에 **Add as alternative** (대안으로 추가)할 수 있습니다.
|
|
|
|
[REGION:lightbox]
|
|
[(w:700)](passFail1.png)
|
|
[/REGION]
|
|
[REGION:caption] 이미지를 클릭하면 원본을 확인합니다. [/REGION]
|
|
|
|
[REGION:note]
|
|
[소스 컨트롤](Engine/UI/SourceControl) 사용 시, 스크린샷 브라우저는 이미지를 자동으로 대기 체인지 리스트에 추가하여 테스트 완료 후 체크인시킬 수 있습니다.
|
|
[/REGION]
|
|
|
|
|