Автоматизированное тестирование GUI унаследованного приложения без MFC? - PullRequest
0 голосов
/ 16 апреля 2009

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

Я хочу написать модульное тестирование для автоматизации тестирования различных функциональных компонентов системы. Я безуспешно пытался использовать AutoIT и AutoHotkey, моя проблема в том, что я не могу прочитать данные из окна, так как это пользовательский класс (окно поиска не отображается). Я даже пытался использовать OCR API с AutoIT безуспешно (это не надежно). Я также пытался использовать эмулятор терминала, такой как CRT и шпаклевка, с ограниченным успехом, поскольку обычное клиентское программное обеспечение отправляет определенные нестандартные данные при нажатии клавиш и т. Д.

Кажется, что все наборы тестов действительно применимы только к веб-приложениям или более стандартизированным приложениям.

У кого-нибудь еще была подобная проблема?

Ответы [ 3 ]

0 голосов
/ 16 апреля 2009

Для автоматического тестирования графического интерфейса толстых и / или терминальных клиентов в Windows вы также можете рассмотреть IBM Rational Functional Tester, IBM Rational Robot, HP QTP, Compuware TestPartner, Borland SilkTest.

Точнее, звучит так, как будто вам, возможно, придется использовать старую работу копирования-вставки. Есть ли в окне терминала аналог Правка-> Выбрать все, Правка-> Копировать меню? Если это так, вы можете написать его, щелкнув по меню GUI, чтобы выделить весь текст и скопировать в буфер обмена. Как только текст окажется в буфере обмена, вы можете использовать API буфера обмена для доступа и анализа текста.

0 голосов
/ 07 июня 2009

В итоге я использовал комбинацию AutoIT и TextCaptureX. Решения, предложенные выше, являются хорошими продуктами, но на самом деле не работают в этом случае. TextCaptureX фактически подключается к GDI Windows для захвата текста.

С тех пор я разработал тестовые сценарии, которые очень хорошо выполняют GUI-тестирование нашего приложения.

0 голосов
/ 16 апреля 2009

Попробуйте "Автоматизированный контроль качества: тест завершен". Мы уже давно используем его для основного приложения, и это единственный продукт, который может тестировать приложения WPF, Win32, .NET, Java и т. Д. И т. Д. Практически без проблем. После создания тестовых сценариев вы можете запустить его позже как регрессионный тест.

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