Автоматизация пользовательского интерфейса на платформе Windows 7 - PullRequest
2 голосов
/ 03 октября 2011

Я новичок в разработке приложений на C ++.Я использую Visual Studio, и у меня есть приложение, которое обрабатывает изображение, как Photoshop.Я хочу автоматизировать пользовательский интерфейс моего приложения и автоматически тестировать различные сценарии, сохраняя обработанные файлы.Я использую Visual studio на моей машине с Win 7 для разработки, не имею .NET.Какие варианты у меня есть для автоматизации моего тестирования?

Спасибо

Ответы [ 2 ]

4 голосов
/ 04 октября 2011

В Windows 7 (и Vista / XP, если вы устанавливаете обновление) вы можете использовать API автоматизации пользовательского интерфейса Microsoft на основе COM для написания клиентов автоматизации пользовательского интерфейса в C ++.

Я успешно автоматизировал пользовательский интерфейсприложений Windows таким образом.Он работает довольно хорошо, и с небольшой дополнительной работой можно даже вызвать интерпретаторов языка сценариев на основе C, которые понимают COM (например, Python и Ruby).

Поиск документации по UIA COM API может быть немного сложнымпоскольку при поиске «MS UI Automation» обычно появляется информация об интерфейсе .NET, а не о интерфейсе COM (интерфейс COM гораздо новее и не так хорошо известен).

Как упоминает Boann, вы можете использовать третий-партийные библиотеки тоже, как AutoIt.Это может облегчить некоторые этапы обучения и дополнительную работу.AutoIt предоставляет свой собственный интерфейс COM (AutoItX), который вы, вероятно, можете использовать из приложения C ++.

Если вы хотите прочитать о написании приложений COM UIA на C ++, вот несколько ссылок для начала:

Руководство по программированию клиента автоматизации пользовательского интерфейса на MSDN:

http://msdn.microsoft.com/en-us/library/ee684021(v=VS.85).aspx

http://msdn.microsoft.com/en-us/library/ee671216(v=VS.85).aspx

Интерфейс IUIAutomation:

http://msdn.microsoft.com/en-us/library/windows/desktop/ee671406(v=vs.85).aspx

Несколько полезных статей с примером кода:

http://www.code -magazine.com / articleprint.aspx? Quickid = 0810052 & printmode = true

http://blogs.msdn.com/b/winuiautomation/archive/2011/05/18/building-ui-automation-client-applications-in-c-and-c.aspx

Форум доступности и автоматизации Windows:

http://social.msdn.microsoft.com/Forums/en-US/windowsaccessibilityandautomation/threads

0 голосов
/ 03 октября 2011

Язык под названием AutoIt Script разработан специально для автоматизации пользовательского интерфейса Windows.К сожалению, это язык, похожий на Basic, а не на C, но он делает то, что говорит: http://www.autoitscript.com/site/autoit/

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