Архитектура WDTF

Чтобы понять архитектуру WDTF, сначала ознакомьтесь с руководством по проектированию платформы тестирования устройств Windows. Наиболее важной концепцией является то, что WDTF использует устройства и систему путем абстрагирования каждого из них в целевой объект (интерфейс IWDTFTarget2 ). На следующем рисунке показана базовая объектная модель, которую предоставляет WDTF.

Схема, иллюстрирующая основную объектную модель WDTF, показывающую хранилище систем и устройств.

Сценарий может использовать некоторые или все следующие объекты и интерфейсы WDTF:

Объект агрегирования WDTF
Объект WDTF (IWDTF2) агрегирования — это начальная точка создания для всего фреймворка. Доступ ко всему в платформе должен осуществляться с помощью этого объекта.

Свойство SystemDepot
Свойство SystemDepot (IWDTFSystemDepot2) содержит только локальный компьютер, к которому можно получить доступ через свойство ThisSystem .

Свойство DeviceDepot
Свойство DeviceDepot (IWDTFDeviceDepot2) представляет коллекцию всех устройств, доступных на компьютере. Скрипт сценария может запрашивать (с помощью метода query ) свойство DeviceDepot для устройств, которые соответствуют одному или нескольким критериям, указанным в строке поиска с помощью простого языка оценки данных (SDEL). Как показано на предыдущем рисунке, запрос возвращает коллекцию целевых объектов (IWDTFTargets2), которые соответствуют критериям. Кроме того, свойство DeviceDepot имеет свойство RootDevice , представляющее объект логического устройства, который является родительским объектом всех физически присутствующих (также известных как нефантные) устройств на компьютере.

IWDTFTarget2
Интерфейс IWDTFTarget2 представляет собой объект тестовых мероприятий. Все действия, выполняемые с помощью платформы, включают по крайней мере один целевой объект. Целевые объекты могут иметь одну из следующих форм:

  • Целевой объект типа устройства представляет аппаратное (или программное обеспечение), подключенное к компьютеру.

  • Целевой объект типа системы представляет компьютер в целом.

Целевой объект содержит атрибуты, описывающие устройство или компьютер, которые они представляют.

IWDTFTargets2
Интерфейс коллекции IWDTFTargets2 представляет коллекцию отдельных целевых объектов (IWDTFTarget2). Метод IWDTFTargets2::Query позволяет получить другую коллекцию, содержащую подмножество содержащихся целевых объектов.

Подключаемые модули действий

WDTF включает набор интерфейсов и реализаций для интерфейсов действий , которые можно использовать в тестовых сценариях для управления целевыми объектами. Каждая реализация знает, как выполнять определенные целевые действия, такие как включение и отключение, или выполнение операций ввода-вывода. Скрипты могут ссылаться на эти интерфейсы по их имени интерфейса без понимания конкретной реализации, как показано на следующем рисунке.

Схема, иллюстрирующая метод Target::GetInterface.

Дополнительные сведения об этих интерфейсах см. в разделе "Управление целевыми объектами".

Простой язык оценки данных (SDEL)

WDTF включает простой язык запросов, язык простой оценки данных (SDEL), аналогичный XPath и упрощающий задачу сбора целевых объектов на основе атрибутов или связей. SDEL позволяет формировать краткие инструкции запросов, определяющие ограничения выбора на основе атрибутов каждого целевого объекта и связей между ними. Дополнительные сведения о SDEL см. в разделе "Общие сведения о языке оценки данных".