Ifdtest2 части A B и C (ЛОГОТИП средства чтения SC) — (ручной тест)
Этот тест проверяет функциональные возможности средства чтения смарт-карта путем проверки карта тестов рабочей группы PC/SC. Вы можете запускать части A, B и C с любой интеллектуальной карта.
Сведения о тесте
Спецификации |
|
Платформы |
|
Поддерживаемые выпуски |
|
Ожидаемое время выполнения (в минутах) | 5 |
Категория | Совместимость |
Время ожидания (в минутах) | 300 |
Требуется перезагрузка | false |
Требуется специальная конфигурация | false |
Тип | automatic |
Дополнительная документация
Тесты в этой области функций могут содержать дополнительную документацию, включая предварительные требования, настройку и устранение неполадок, которые можно найти в следующих разделах:
Выполнение теста
Перед выполнением теста завершите настройку теста, как описано в требованиях к тесту: предварительные требования для чтения смарт-карт.
Устранение неполадок
Общие сведения об устранении неполадок тестов HLK см. в разделе "Устранение неполадок тестов Windows HLK".
Сведения об устранении неполадок см. в разделе "Устранение неполадок Device.Input Testing".
Дополнительные сведения
Этот тест проверяет функциональные возможности средства чтения смарт-карта путем проверки двух версий тестов рабочей группы PC/SC карта.
Тест и его оборудование должны иметь возможность выполнять определенные тесты IFD и создавать тестовый отчет. Конкретные требования имеют дело с номинальной операцией и исключительной операцией (условия ошибки). Кроме того, эти протоколы должны применяться ко всем протоколам, поддерживаемым подсистемой чтения.
Файл конфигурации необходимо предоставить для следующих типов средств чтения смарт-карта:
- Бесконтактные
- Виртуальная
- Требуется сеть
Файл конфигурации должен быть назван ifdtest_config.xml и должен быть помещен в C:\SmartCardReaderTest. В следующем фрагменте кода показан пример файла конфигурации:
<SmartCardReader>
<Version>1</Version>
<Contactless>False</Contactless>
<Virtual>False</Virtual>
<Network>False</Network>
</SmartCardReader>
IFDTEST2 выполняет тестовые случаи в трех отдельных заданиях тестирования: тесты интерфейса чтения выполняются без вставки в средство чтения. Тестовые случаи resource Manager выполняются как пример карта вставляются и удаляются из средства чтения, а также выполняют обработку обнаружения вставки карта в различных условиях (любые карта можно использовать для этого теста).
Тесты протокола карт включают операцию как с вставленными репрезентативными репрезентативными смарт-карта, так и со специальными карта, которые демонстрируют определенное специально запрограммированное поведение. Тестовые случаи с использованием обычно доступных карта будут выполнять стандартные операции с карта, выбранными для представления различных сочетаний скорости связи и протокола. Эти тесты изменились с карта набором 2.
Тестовые случаи состояния Resource Manager
Часть A
Карта отслеживать тестовые случаи проверка для правильного обнаружения состояния вставки смарт-карта и правильной обработки операций, прерванных непредвиденным удалением карта.
Тестирование обнаружения пустых читателей с помощью IOCTL_SMARTCARD_IS_PRESENT
Тестирование обнаружения вставленных карта с помощью IOCTL_SMARTCARD_IS_PRESENT
Тестирование удаления вставленного карта с помощью IOCTL_SMARTCARD_IS_ABSENT
Проверка правильной обработки случайным образом карта вставки и удаления действий в течение 15 секунд
- Убедитесь, что IOCTL_SMARTCARD_IS_PRESENT и IOCTL_SMARTCARD_IS_ABSENT создают допустимые результаты
Часть C
Тестовые случаи resource manager проверяют успешное завершение операций изменения состояния, как правило, команду интеллектуального карта resource manager.
Проверка успешного выполнения IOCTL_SMARTCARD_GET_STATE без карта
Проверка допустимого возвращаемого состояния
Проверка правильного возврата из IOCTL_SMARTCARD_IS_PRESENT
Проверка правильного возврата из IOCTL_SMARTCARD_IS_ABSENT
Оператор вставляет карта
Проверка успешности IOCTL_SMARTCARD_GET_STATE с помощью вставки карта
Проверка допустимого возвращаемого состояния
Проверка правильного возврата из IOCTL_SMARTCARD_IS_ABSENT
Холодный сброс карта
Убедитесь, что состояние карта SCARD_NEGOTIABLE
Установка протокола карточки T0 или T1
Проверьте успешность IOCTL_SMARTCARD_POWER, чтобы отключить карта
Оператор удаляет карта
Проверка успешного выполнения IOCTL_SMARTCARD_GET_STATE без карта
Часть E
Тестовые случаи управления питанием проверяют, что драйвер возвращает правильные сведения о состоянии для средства чтения в последовательностях гибернации, даже если состояние средства чтения изменяется во время гибернации путем вставки или удаления карта.
Оператор удаляет все карта
Компьютер с режимом гибернации оператора
Оператор запускает компьютер
Проверка состояния чтения SCARD_ABSENT при возврате из гибернации
Оператор вставляет карта
Компьютер с режимом гибернации оператора
Оператор запускает компьютер
Проверка состояния чтения SCARD_PRESENT при возврате из гибернации
Оператор удаляет карта
Компьютер с режимом гибернации оператора
Оператор удаляет карта во время гибернации
Оператор запускает компьютер
Проверка состояния чтения SCARD_ABSENT при возврате из гибернации
Компьютер с режимом гибернации оператора
Оператор вставляет карта во время гибернации
Оператор запускает компьютер
Проверка состояния чтения SCARD_PRESENT при возврате из гибернации
Тестовые случаи интерфейса чтения
Часть B
Тестовые варианты интерфейса чтения проверка для правильного свойства реализации и сведений о состоянии на драйвере чтения.
Проверка атрибутов, сообщаемых средством чтения с помощью примера карта вставленного
Проверьте, что имя устройства, указанное драйвером, соответствует WDM PnP
Проверка правильности обработки запросов на чтение атрибутов с помощью буфера возврата NULL
Проверьте, что драйвер правильно останавливает ожидающие запросы ввода-вывода, если драйвер закрыт и повторно открыт с ожидающей операцией ввода-вывода
Тестирование атрибутов чтения без вставки карта
SCARD_ATTR_VENDOR_NAME: строка без нулевой длины
SCARD_ATTR_VENDOR_IFD_TYPE: строка без нулевой длины
SCARD_ATTR_DEVICE_UNIT: 4 байта или большее значение длины
SCARD_ATTR_ATR_STRING: попытка чтения завершается ошибкой
SCARD_ATTR_DEFAULT_CLK : 1000 <= значение <= 20000
SCARD_ATTR_MAX_CLK : 1000 <= значение <= 20000
SCARD_ATTR_DEFAULT_DATA_RATE: попытка чтения завершается успешно
SCARD_ATTR_MAX_DATA_RATE: попытка чтения завершается успешно
SCARD_ATTR_MAX_IFSD : 1 <= значение <= 254
SCARD_ATTR_CURRENT_PROTOCOL_TYPE: попытка чтения завершается ошибкой
Тестирование атрибутов чтения с помощью вставленного карта
SCARD_ATTR_VENDOR_NAME: строка без нулевой длины
SCARD_ATTR_VENDOR_IFD_TYPE: строка без нулевой длины
SCARD_ATTR_DEVICE_UNIT: 4 байта или большее значение длины
SCARD_ATTR_ATR_STRING: попытка чтения завершается успешно
SCARD_ATTR_DEFAULT_CLK: значение 1000 <= значение <= 20000
SCARD_ATTR_MAX_CLK: значение 1000 <= значение <= 20000
SCARD_ATTR_DEFAULT_DATA_RATE: попытка чтения завершается успешно
SCARD_ATTR_MAX_DATA_RATE: попытка чтения завершается успешно
SCARD_ATTR_MAX_IFSD : 1 <= значение <= 254
SCARD_ATTR_CURRENT_PROTOCOL_TYPE: значение = 0
Чтение состояния карта с карта удалено с помощью IOCTL_SMARTCARD_GET_STATE: state <= SCARD_SWALLOWED
Сброс карта: ERROR_UNRECOGNIZED_MEDIA
Тестовые случаи протокола карты
Часть D
Карточка тестирования соответствия требованиям Infineon Technologies PC/SC (карточка 0 / не помеченная)
ATR: 3B EF 00 00 81 31 20 49
00 5C 50 43 54 10 27 F8
D2 76 00 00 38 33 00 4D
Попытка чтения с буфером слишком мало
Запрос на продление времени ожидания — рисунок запроса маршрута к файлу 0001, чтение и проверка
Тест повторной синхронизации блоков в файле 0002: карта принимает первый блок. Затем повторно запрашивает повторную передачу блока 2; повторная синхронизация узла — ожидается ERROR_IO_DEVICE
Проверка повторной синхронизации блоков в файле 0002: карта неоднократно объявляет ошибку EDC в блоке 2; повторное синхронизация узла — ожидается ERROR_IO_DEVICE
Неправильная последовательность блоков считывается в файл 0003 — ожидается ERROR_IO_DEVICE
Идентификатор файла запроса Ifsc 0004
Принудительное время ожидания для чтения в файл 0005 — ожидается ERROR_IO_DEVICE
Чтение и обработка файла результатов (A000), синтаксический анализ и сообщение об ошибках
Athena T0 Test Card (карточка 1)
ATR: 3B D6 18 00 80 B1 80 6D
1F 03 80 51 00 61 10 30
9E
Сброс с длинным (примерно 900 mSec) время передачи ATR
Задайте значение "Протокол T0", ожидается успешное выполнение
Удаление всех карта файлов по собственной команде, ожидайте успеха
Создание тестового файла 0002, ожидание успешного выполнения
Выберите тестовый файл 0002, ожидайте успеха
Запись 256 байтов в виде 4 блоков 64 байтов, ожидайте успешного выполнения.
Чтение и проверка 256 байтов в виде 4 блоков 64 байтов, ожидает успешного выполнения
Запись 255 байт в виде одного блока, ожидает успешного выполнения. Карта получит байты в однобайтовом режиме, пока не останется 8 байтов, в то время как остальная часть данных будет запрашиваться от узла в виде одного блока, ожидает успешного выполнения.
Задайте для буфера получения значение 9 байт и попытайтесь получить 10 байт ответа от карта, ожидается ERROR_INSUFFICIENT BUFFER
Отправка неправильно сформированных (Lc не согласуется с длиной данных) выберите команду 00 a4 00 00 08 00, ожидайте ERROR_INVALID_PARAMETER
Выбор несуществующего файла, ожидайте 6A 82
Отправить команду, чтобы замолчать карта (80 00 01 00 01 11), ожидайте ERROR_SEM_TIMEOUT
Сброс карта
Отправка команды эхо в карта для тестирования расширения времени ожидания запроса для количества расширений 1, 2, 5 и 30 расширений, ожидайте успешность
Athena\Inverse Convention Test Card (Карточка 2)
ATR: 3F 96 18 80 01 80 51 00
61 10 30 9F
Сброс с длинным (примерно 900 mSec) время передачи ATR
Задайте значение "Протокол T0", ожидается успешное выполнение
Удаление всех карта файлов по собственной команде, ожидайте успеха
Создание тестового файла 0002, ожидание успешного выполнения
Выберите тестовый файл 0002, ожидайте успеха
Запись 256 байтов в виде 4 блоков 64 байтов, ожидайте успешного выполнения.
Чтение и проверка 256 байтов в виде 4 блоков 64 байтов, ожидает успешного выполнения
Запись 255 байт в виде одного блока, ожидает успешного выполнения. Карта получит байты в однобайтовом режиме, пока не останется 128 байтов, в то время как остальные данные будут запрашиваться от узла в виде одного блока, ожидайте успешного выполнения.
Задайте для буфера получения значение 9 байт и попытайтесь получить 10 байт ответа от карта, ожидается ERROR_INSUFFICIENT BUFFER
Отправка неправильно сформированных (Lc не согласуется с длиной данных) выберите команду 00 a4 00 00 08 00, ожидайте ERROR_INVALID_PARAMETER
Выбор несуществующего файла, ожидайте 6A 82
Отправить команду, чтобы замолчать карта (80 00 01 00 01 11), ожидайте ERROR_SEM_TIMEOUT
Сброс карта
Отправка команды эхо в карта для тестирования расширения времени ожидания запроса для количества расширений 1, 2, 5 и 30 расширений, ожидайте успешность
Axalto 32K eGate Test Card (Card 3)
ATR: 3B 95 18 40 FF 62 01 02
01 04
Попытка установить протокол T=1, ожидается ERROR_NOT_SUPPORTED
Установка протокола T=0
Проверка подлинности с помощью ключа транспорта карта ожидает успеха
Очистка состояния карта путем удаления файлов из предыдущих запусков (удаление файлов открытого и закрытого ключей RSA, ПИН-файла пользователя и тестового файла), ожидает успешного выполнения.
Создание тестового файла 0055, ожидание успешного выполнения
Тестирование блоков записи 1, 25, 75, 128 байт для тестирования файла, ожидание успеха
Тестирование чтения 128 байт из тестового файла, сравнение данных, ожидание успеха
Удаление тестового файла 0055, ожидание успешного выполнения
Создание ПИН-файла, ожидание успеха
Задайте ДЛЯ ПИН-кода пользователя значение 00000000, ожидается успешное выполнение.
Создание файла закрытого ключа, ожидание успеха
Создание файла открытого ключа, ожидание успеха
Выбор файла закрытого ключа, ожидание успеха
Проверка подлинности пользователя с ПИН-кодом, ожидание успеха
Создание пары ключей, ожидание успеха
Хэш 16 байт данных, ожидайте успешности
Получение данных ответа на хэш-операцию, 20 байт и 2 байт ответа, ожидайте успешного выполнения.
Карточка тестирования модуля модуля карточки Infineon SiCrypt (карточка 4)
ATR: 3B DF 18 00 81 31 FE 67
00 5C 49 43 4D D4 91 47
D2 76 00 00 38 33 00 58
Попытка задать протокол T=0, ожидайте ERROR_NOT_SUPPORTED
Установка протокола T=1, ожидание успешного выполнения
Проверка подлинности с помощью ПИН-кода 12345678, ожидание успеха
Удаление файлов из предыдущих запусков при наличии
Создание тестового файла 0007, ожидание успешного выполнения
Выберите файл 0007, ожидайте успеха
Запись системного времени
Запись блоков тестирования 1, 25, 50, 75, 100, 125, 128 байт в карта — чтение и проверка данных после каждой записи блока, ожидает успешного выполнения.
Получение системного времени и отображение истекшего времени в секундах для завершения теста
Выберите файл 0007, ожидайте успеха
Запись 128 байтового блока байтов 55, чтение обратно и проверка, ожидает успеха
Запись 128 байтового блока AA, чтение и проверка успешности
Запись 128 байтового блока байтов 00, чтение обратно и проверка, ожидает успешного выполнения.
Запись 128 байтового блока байтов FF, чтение обратно и проверка успешности
Выберите несуществующий файл 7777, ожидается 9404
Выберите MF на 00 a4 00 00, ожидается 90 00 (успешно)
Выберите недопустимый файл 77, ожидается 94 04
Отправка неправильно сформированных (Lc несогласованная с длиной данных) выберите команду 00 a4 00 00 08 00, ожидается 94 04
Отправка неправильно сформированной (слишком короткой) команды выбора по 00 a4 00, ожидается 67 00
Создание DF 5555 из MF, ожидайте успеха
Выберите в 5555, ожидайте успеха
Создание DF 5656 из 5555, ожидает успеха
Выберите в 5656, ожидайте успеха
Создание файла 5757 в DF 5656, ожидайте успеха
Выберите этот файл из MF по полному пути, ожидайте успеха
Запись 8 байтов в файл, чтение и проверка, ожидание успеха
Удаление выбранного файла, ожидание успешного выполнения
Попытка выбрать этот файл по полному пути, ожидается 94 04
Выбор и удаление DF 5656, ожидание успеха
Выбор и удаление DF 5555, ожидание успеха
Выбор и удаление файла 0007, ожидание успешного выполнения
Выполнение теста чтения карта
Предупреждение
Для тестовых случаев управления питанием в части D компьютер будет гибернироваться, и может потребоваться удалить или повторно включить смарт-карта в средство чтения смарт-карта теста.
Части A, B, C и E
Следуйте инструкциям на экране для частей A, B, C и E с помощью карта из теста рабочей группы PC/SC карта набор 2. При появлении запроса вставьте и удалите каждую смарт-карта из средства чтения смарт-карта теста.
Часть D
Следуйте инструкциям на экране для части D, чтобы завершить четыре тестовых случая управления питанием. При появлении запроса вставьте или удалите смарт-карта из тестового средства чтения смарт-карта и перезагрузите тестовый компьютер.
Чтобы запустить тестовый случай выхода на карту 1 или карточки, выполните следующие действия.
Удалите смарт-карта из средства чтения смарт-карта теста.
Компьютер автоматически будет гибернировать через 15 секунд.
Разрешить компьютеру гибернировать в течение 30–60 секунд.
Нажмите кнопку питания компьютера, чтобы вывести компьютер из спящего режима и продолжить тест.
При появлении запроса повторно введите смарт-карта в средство чтения смарт-карта теста.
Чтобы запустить тестовый случай "Проверка 2 карточки в/карточке", выполните следующие действия:
Убедитесь, что смарт-карта находится в тестовом средстве чтения смарт-карта.
Компьютер автоматически будет гибернировать через 15 секунд.
Разрешить компьютеру гибернировать в течение 30–60 секунд.
Удалите смарт-карта из средства чтения смарт-карта теста.
Нажмите кнопку питания компьютера, чтобы вывести компьютер из спящего режима.
При появлении запроса повторно введите смарт-карта в средство чтения смарт-карта теста перед началом следующего тестового случая.
Чтобы запустить тест 3 карточки в/карточке в тестовом случае:
Убедитесь, что смарт-карта находится в тестовом средстве чтения смарт-карта.
Компьютер автоматически будет гибернировать через 15 секунд.
Разрешить компьютеру гибернировать в течение 30–60 секунд.
Нажмите кнопку питания компьютера, чтобы вывести компьютер из спящего режима.
При появлении запроса удалите смарт-карта из тестового средства чтения смарт-карта перед началом следующего тестового случая.
Чтобы запустить тест 4 карточки в тестовом случае:
Убедитесь, что в тестовом средстве чтения смарт-карта нет смарт-карта.
Компьютер автоматически будет гибернировать через 15 секунд.
Разрешить компьютеру гибернировать в течение 30–60 секунд.
Повторное использование смарт-карта в тестовом средстве чтения смарт-карта.
Нажмите кнопку питания компьютера, чтобы вывести компьютер из спящего режима. Тест интеллектуального карта чтения завершен.
Просмотр файлов журналов тестирования.
Выполните все остальные необходимые тесты.
После успешного выполнения всех тестов, необходимых для этой отправки теста, верните результаты теста.
Синтаксис команд
Чтобы выполнить эту команду за пределами HLK Studio, необходимо остановить службу смарт-карт, выполнить команду, а затем запустить службу смарт-карт.
Команда | Description |
---|---|
ifdtest2.exe -sd -se -sf |
Выполняет тест. |
Список файлов
Файл | Местонахождение |
---|---|
ifdtest2.exe |
<testbinroot>\nttest\Driverstest\storage\wdk\ |
Параметры
Наименование параметра | Описание параметра |
---|---|
LLU_NetAccessOnly | Учетная запись пользователя для доступа к тестовой общей папке. |
LLU_LclАдминистратор Usr | Учетная запись пользователя для выполнения теста. |