Как читать / взаимодействовать со старым ActiveX SSUltraGrid с помощью UIAutomation - PullRequest
1 голос
/ 13 октября 2008

Я занимаюсь автоматическим тестированием старого приложения Win32, в котором использовались элементы управления ActiveX. Я использую White (от Thougthworks), который использует Microsoft UIAutomation. Я могу найти элемент AutomationElement, связанный с элементом управления, но как мне с ним взаимодействовать?

Spy ++ видит элемент управления сеткой как одно окно, поэтому я не могу напрямую общаться со строками, столбцами или ячейками. Как я могу общаться с элементом управления SSUltraGrid из моего тестового кода?

Приветствие Найджел

1 Ответ

1 голос
/ 05 декабря 2009

Основная проблема с некоторыми ActiveX и другими пользовательскими элементами управления, такими как SSUltraGrid, заключается в том, что вы упомянули, они представлены как одно окно. Поэтому, если они не предоставили API, который делает их «дружественными» к вашему инструменту автоматизации GUI, вы всегда будете сталкиваться с этой проблемой. Конечно, многие компании предлагают более новые версии своих продуктов, более дружественные к UI Automation, чем раньше ... возможно, стоит обновить систему управления ...

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

...