지문 판독기 테스트 필수 구성 요소
이 섹션에서는 Windows HLK(Windows Hardware Lab Kit)를 사용하여 지문 판독기를 테스트하기 전에 완료해야 하는 작업에 대해 설명합니다.
하드웨어 요구 사항
지문 판독기를 테스트하려면 다음 하드웨어가 필요합니다. 테스트 디바이스에서 다른 기능을 제공하는 경우 추가 하드웨어가 필요할 수 있습니다. 추가 하드웨어 요구 사항이 적용되는지 확인하려면 Windows HLK Studio에서 디바이스에 대해 표시되는 각 테스트에 대한 테스트 설명을 참조하세요.
하나의 테스트 컴퓨터. 테스트 컴퓨터는 Windows HLK 필수 구성 요소를 충족해야 합니다. 자세한 내용은 Windows HLK 필수 구성 요소를 참조하세요.
테스트할 지문 판독기.
인증된 USB 2.0 허브 1개(지문 판독기가 USB 기반 디바이스인 경우).
참고
서버에서 사용할 제품을 인증하려면 테스트 컴퓨터에서 4개의 프로세서와 최소 1GB의 RAM을 지원해야 합니다. 이러한 시스템 기능은 디바이스 및 드라이버의 리밸런스, D3 상태 및 여러 프로세서 그룹 기능을 테스트하는 데 필요합니다. 실제로 64개 이상의 프로세서가 있는 컴퓨터는 디바이스를 테스트하는 데 필요하지 않습니다. 또한 디바이스 또는 드라이버를 테스트하는 데 사용되는 서버 시스템에는 테스트 전에 Server Core가 설치되어 있어야 합니다. 자세한 내용은 Windows Server 설치 옵션을 참조하세요.
테스트 컴퓨터 풀을 사용하여 디바이스를 테스트하는 경우 풀에 있는 하나 이상의 컴퓨터에는 4개의 프로세서와 최소 1GB의 RAM이 있어야 합니다. 또한 해당 컴퓨터에는 테스트하려는 디바이스와 드라이버가 포함되어 있어야 합니다. 드라이버가 풀의 모든 컴퓨터에서 동일한 경우 시스템에서 모든 테스트 컴퓨터에 대해 실행할 일정을 만듭니다.
하드 디스크 드라이브 테스트와 같이 테스트할 드라이버가 포함되지 않은 테스트의 경우 Windows HLK 스케줄러는 기본 테스트 컴퓨터에서 실행할 디바이스 및 드라이버의 리밸런스, D3 상태, 여러 프로세서 그룹 기능의 유효성을 검사하는 테스트를 제한합니다. 이 컴퓨터는 여러 프로세서 그룹을 갖도록 수동으로 구성해야 합니다. 기본 컴퓨터는 목록의 첫 번째 테스트 컴퓨터입니다. 테스트 담당자는 목록의 첫 번째 테스트 컴퓨터에서 최소 하드웨어 요구 사항을 충족하는지 확인해야 합니다.
참고
반가상화 드라이버를 제외하고(WHCP 정책 및 프로세스 문서에 정의된 대로) 서버 인증 또는 서명에 대해 물리적 디바이스 및 관련 드라이버를 테스트하는 경우 어떤 형태의 가상화도 사용할 수 없습니다. 모든 가상화 제품은 여러 프로세서 그룹, 디바이스 전원 관리, 디바이스 PCI 기능 및 기타 테스트와 관련된 테스트를 통과하는 데 필요한 기본 기능을 지원하지 않습니다.
참고
여러 프로세서 그룹 설정의 경우 인증을 위해 Windows Server 2008 R2 이상 장치 드라이버의 Hardware Lab Kit 테스트에 대한 프로세서 그룹 크기 값을 설정해야 합니다. 이 작업은 /set 옵션을 사용하여 관리자 권한 명령 프롬프트 창에서 bcdedit를 실행하여 수행됩니다.
그룹 설정을 추가하고 다시 시작하는 명령은 다음과 같습니다.
bcdedit.exe /set groupsize 2
bcdedit.exe /set groupaware on
shutdown.exe -r -t 0 -f
그룹 설정을 제거하고 다시 부팅하는 명령은 다음과 같습니다.
bcdedit.exe /deletevalue groupsize
bcdedit.exe /deletevalue groupaware
shutdown.exe -r -t 0 -f
참고
코드 무결성 설정
Windows Server 2016의 VBS(가상화 기반 보안) 기능은 먼저 서버 관리자를 통해 사용하도록 설정해야 합니다.
이 작업이 수행되면 다음 레지스트리 키를 만들고 설정해야 합니다.
HKLM\System\CurrentControlSet\Control\DeviceGuard
HypervisorEnforcedCodeIntegrity:REG_DWORD
0 or 1 (disabled, enabled)
소프트웨어 요구 사항
지문 판독기를 테스트하려면 다음 소프트웨어가 필요합니다.
테스트 디바이스의 드라이버.
최신 Windows HLK 필터 또는 업데이트
테스트 컴퓨터 구성
테스트 디바이스에 대한 테스트 컴퓨터를 구성하려면 다음 단계를 수행합니다.
테스트 컴퓨터에 적절한 Windows 운영 체제를 설치한 다음, 테스트 네트워크(Windows HLK Studio 및 Windows HLK Controller를 포함하는 네트워크)의 컴퓨터를 구성합니다.
테스트 디바이스가 USB 포트를 통해 연결된 경우 USB 2.0 컨트롤러를 고속 USB 2.0 허브에 연결한 다음, 테스트 디바이스를 고속 USB 2.0 허브의 다운스트림 포트에 연결합니다.
참고
USB 테스트 디바이스를 USB 2.0 컨트롤러의 루트 허브에 직접 연결하지 마세요.
지문 판독기를 테스트 컴퓨터에 연결합니다.
제조업체에서 제공하는 장치 드라이버를 테스트 컴퓨터에 설치해야 하는 경우 지금 설치합니다.
테스트 컴퓨터에서 지문 판독기가 제대로 작동하는지 확인합니다.
Windows HLK 클라이언트 애플리케이션을 테스트 컴퓨터에 설치합니다.
Windows HLK Studio를 사용하여 머신 풀을 만든 다음, 테스트 컴퓨터를 해당 풀로 이동합니다.
테스트 디렉터리 [SYSTEMDRIVE]\FingerprintReaderTest를 만듭니다.
[SYSTEMDRIVE]\Windows\System32\WinBioPlugins에서 센서, 스토리지 및 엔진 어댑터에 대한 어댑터 DLL을 복사합니다.
다음 템플릿을 사용하여 센서, 스토리지 및 엔진 어댑터에 대한 구성 파일을 만듭니다.
sensorAdapterLib, engineAdapterLib 및 storageAdapterLib 구성 태그를 편집하여 이전에 복사한 어댑터 DLL을 수정합니다.
supportedModes 및 supportedPurposes 구성 태그를 디바이스 기능과 일치하도록 편집합니다.
runOptional 특성은 기본적으로 false입니다. 추가 테스트를 실행하려면 true로 변경합니다.
스토리지 테스트의 경우 디바이스에 온보딩 스토리지가 있는 경우 deviceRequired 특성을 true로 변경합니다.
테스트를 시작하기 전에 테스트 컴퓨터가 준비 상태인지 확인합니다. 테스트를 실행하기 전에 매개변수를 설정해야 하는 경우 해당 테스트에 대한 대화 상자가 표시됩니다. 자세한 내용은 특정 테스트 항목을 검토하세요.
일부 Windows HLK 테스트에는 사용자 개입이 필요합니다. 제출을 위해 테스트를 실행하는 경우 수동 테스트와 별도로 블록에서 자동화된 테스트를 실행하는 것이 가장 좋습니다. 이렇게 하면 수동 테스트가 자동화된 테스트의 완료를 방해하지 않도록 할 수 있습니다.
지문 판독기 드라이버 또는 어댑터 테스트를 실행하기 전에 Windows 생체 인식 서비스를 중지하고 사용하지 않도록 설정합니다. 지문 판독기 HLK 테스트가 실행되는 동안 생체 인식 서비스가 실행되는 경우 둘 사이에 충돌이 있을 수 있으며 테스트 결과가 정확하지 않습니다.
테스트 구성 파일 작성
지문 판독기 어댑터 테스트를 실행하기 전에 센서, 스토리지 및 엔진 어댑터에 대한 XML 구성 파일을 만들어야 합니다. 이러한 파일의 이름은 SensorTestConfig.XML, EngineTestConfig.XML 및 StorageTestConfig.XML이어야 합니다. 아래 템플릿을 시작점으로 사용하고 특정 디바이스에 맞게 수정합니다.
센서 어댑터 구성 파일
<?xml version="1.0" encoding="utf-8"?>
<bioTestConfiguration version="0" runOptional="false" runInteractive="true" abortOnFailure="false" manualStep="false" logType="WTT">
<testSuites>
<testSuite deviceRequired="true" id="SensorAdapterTestSuite">
<library>sensortest.dll</library>
<description>Sensor Adapter Test Suite</description>
</testSuite>
</testSuites>
<deviceInfo>
<sensorAdapterLib>winbiosensoradapter.dll</sensorAdapterLib>
<engineAdapterLib>engineadapter.dll</engineAdapterLib>
<storageAdapterLib>winbiostorageadapter.dll</storageAdapterLib>
<indicatorSupported>0</indicatorSupported>
<supportedModes>
<supportedMode>0x01</supportedMode>
<supportedMode>0x02</supportedMode>
</supportedModes>
<supportedPurposes>
<supportedPurpose>0x01</supportedPurpose>
<supportedPurpose>0x02</supportedPurpose>
<supportedPurpose>0x04</supportedPurpose>
<supportedPurpose>0x08</supportedPurpose>
<supportedPurpose>0x10</supportedPurpose>
<supportedPurpose>0x80</supportedPurpose>
</supportedPurposes>
</deviceInfo>
</bioTestConfiguration>
엔진 어댑터 구성 파일
<?xml version="1.0" encoding="utf-8"?>
<bioTestConfiguration version="0" runOptional="false" runInteractive="true" abortOnFailure="false" manualStep="false" logType="WTT">
<testSuites>
<testSuite deviceRequired="true" id="EngineAdapterTestSuite">
<library>enginetest.dll</library>
<description>Engine Adapter Test Suite</description>
</testSuite>
</testSuites>
<deviceInfo>
<sensorAdapterLib>winbiosensoradapter.dll</sensorAdapterLib>
<engineAdapterLib>engineadapter.dll</engineAdapterLib>
<storageAdapterLib>winbiostorageadapter.dll</storageAdapterLib>
<indicatorSupported>0</indicatorSupported>
<engineOnDevice>FALSE</engineOnDevice>
<supportedModes>
<supportedMode>0x01</supportedMode>
<supportedMode>0x02</supportedMode>
</supportedModes>
<supportedPurposes>
<supportedPurpose>0x01</supportedPurpose>
<supportedPurpose>0x02</supportedPurpose>
<supportedPurpose>0x04</supportedPurpose>
<supportedPurpose>0x08</supportedPurpose>
<supportedPurpose>0x10</supportedPurpose>
<supportedPurpose>0x80</supportedPurpose>
</supportedPurposes>
</deviceInfo>
</bioTestConfiguration>
스토리지 어댑터 구성 파일
<?xml version="1.0" encoding="utf-8"?>
<bioTestConfiguration version="0" runOptional="false" runInteractive="true" abortOnFailure="false" manualStep="false" logType="WTT">
<testSuites>
<testSuite deviceRequired="false" id="StorageAdapter">
<library>storagetest.dll</library>
<description>Storage Adapter Test Suite</description>
</testSuite>
</testSuites>
<deviceInfo>
<sensorAdapterLib>winbiosensoradapter.dll</sensorAdapterLib>
<engineAdapterLib>engineadapter.dll</engineAdapterLib>
<storageAdapterLib>winbiostorageadapter.dll</storageAdapterLib>
<indicatorSupported>0</indicatorSupported>
<storageOnDevice>FALSE</storageOnDevice>
<supportedModes>
<supportedMode>0x01</supportedMode>
<supportedMode>0x02</supportedMode>
</supportedModes>
<supportedPurposes>
<supportedPurpose>0x01</supportedPurpose>
<supportedPurpose>0x02</supportedPurpose>
<supportedPurpose>0x04</supportedPurpose>
<supportedPurpose>0x08</supportedPurpose>
<supportedPurpose>0x10</supportedPurpose>
<supportedPurpose>0x80</supportedPurpose>
</supportedPurposes>
</deviceInfo>
</bioTestConfiguration>
추가 구성 태그
구성 파일의 "device information" 섹션 아래에는 세 가지 추가 태그가 있습니다.
<deviceInfo>
<badSwipeDetectionPoint> VALUE </badSwipeDetectionPoint>
<privateConnectionSensorToEngine>BOOLEAN</privateConnectionSensorToEngine>
<privateConnectionEngineToStorage>BOOLEAN</privateConnectionEngineToStorage>
</deviceInfo>
badSwipeDetectionPoint
SensorFinishCapture
EngineAcceptData
EngineProcessData
참고
최대 하나의 badSwipeDetectionPoint 태그가 단일 테스트 구성 파일에 나타날 수 있습니다.
privateConnectionSensorToEngine
TRUE이면 WinBio Framework에서 관리하지 않는 엔진 구성 요소와 센서 간에 내부 연결이 있는 것입니다.
FALSE이면 센서와 엔진 간의 연결에서 표준 WinBio 어댑터 인터페이스를 사용하는 것입니다.
privateConnectionEngineToStorage
TRUE이면 WinBio Framework에서 관리하지 않는 엔진 및 스토리지 구성 요소 간에 내부 연결이 있는 것입니다.
FALSE이면 엔진과 스토리지 간의 연결에서 표준 WinBio 어댑터 인터페이스를 사용하는 것입니다.
참고
복합 디바이스의 경우 privateConnectionSensorToEngine 및 privateConnectionEngineToStorage를 모두 설정할 수 있습니다.
engineOnDevice
TRUE이면 지문 센서가 하드웨어의 엔진 기능을 지원하는 것입니다. 이는 일반적으로 센서가 고급 센서임을 의미합니다.
FALSE이면 지문 센서가 소프트웨어의 엔진 기능을 지원하는 것입니다. 이는 일반적으로 센서가 기본 센서임을 의미합니다.
storageOnDevice
TRUE이면 지문 센서가 하드웨어의 템플릿 스토리지를 지원하는 것입니다. 이는 일반적으로 센서가 고급 센서임을 의미합니다.
FALSE이면 지문 센서가 하드웨어의 템플릿 스토리지를 지원하지 않는 것입니다. 템플릿은 디스크에 저장됩니다. 이는 일반적으로 센서가 기본 센서임을 의미합니다.