Coded UI Test - получить мой пользовательский объект (WinForms)? - PullRequest
2 голосов
/ 03 ноября 2010

Я хочу создать автоматизированный тест пользовательского интерфейса, который будет проверять мою сетку синхронизации.Моя проблема в том, что рекордер не может распознать этот элемент управления (или любой другой элемент управления syncfusion).Я много искал в Интернете, но не смог найти никакого расширения, чтобы рекордер распознавал мои элементы управления (я использую WinForms, а не WPF!) Или, по крайней мере, способ расширить возможности рекордера, чтобы элементы управления syncfusionбыть признанным как-то.

Есть ли простой способ расширить рекордер?Или есть какое-либо расширение?Или, может быть, я могу получить объект сетки из WinClient, который генерирует рекордер?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 03 ноября 2010

Запустите вашу программу.Запустите утилиту Spy ++.Введите Ctrl + F, чтобы запустить инструмент поиска и перетащите «бычий глаз» на форму.Хорошо, синхронизируй и посмотри на окна, которые видны в дереве.Если вы видите обычные элементы управления Windows Forms, такие как кнопка или метка, но , а не любой из элементов управления SyncFusion, то вы, вероятно, нашли источник проблемы.

Поставщики компонентов, которые пытаютсяулучшить элементы управления .NET обычно делают это путем создания элементов управления «без окон».Они на самом деле не являются элементами управления, они не являются производными от класса Control и не имеют свойства Handle.Они используют поверхность родителя, чтобы нарисовать себя, делая их похожими на элементы управления.Классы .NET ToolStripItem делают это.И это также подход, который использует WPF.

Большим преимуществом является то, что они быстро рендерится и поддерживают все виды эффектов, которые не могут поддерживать обычные элементы управления, такие как прозрачность, поворот и сглаженные края окон.Большим недостатком является то, что используемый вами инструмент внезапно становится неряшливым и не может найти элемент управления обратно.Поскольку они работают, находя окно Windows в вашей форме, окна для них нет.

Это сложная проблема, которую нужно решить, «контроль» существует только в памяти, и для инструмента нет хорошего способа.чтобы найти его обратно.Использование доступности - это единственный способ для такого инструмента найти элемент управления, о котором я могу подумать.Что в первую очередь должно было бы быть реализовано поставщиком средств управления, несколько неясная функция, которую легко упустить из виду.Вам действительно нужна помощь поставщика, чтобы найти обходной путь для этого.Не должно быть проблемой, поэтому вы заплатили им большие деньги.

0 голосов
/ 05 ноября 2010

Это Раджадурай из Syncfusion. Благодарим Вас за интерес к продуктам Syncfusion. Чтобы автоматизация тестирования пользовательского интерфейса распознавала сетки Syncfusion (WinForms), в сетке должна быть обеспечена некоторая внутренняя поддержка, реализация которой находится в процессе разработки и собирается завершиться. Пожалуйста, отправьте инцидент через Direct-Trac для любых дальнейших связанных запросов по следующей ссылке. http://www.syncfusion.com/Account/Logon?ReturnUrl=%2fsupport%2fdirecttrac

Вы также можете связаться с нами через support@syncfusion.com. Мы рады помочь вам.

С уважением, Rajadurai

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...