Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Автоматизация MS Access. Выбор тулзы и возможные проблемы.


(Stanislav Tserkovnikov) #1

Добрый день!
Гуглил, но не нашел. Кто-нибудь автоматизировал Access? Конкретно я работаю с 2007.
Есть куча взаимосвязанных форм, надо открыть каждую и чекнуть, что нет ошибок. Форм очень много(200+).
Заказчик хочет быстренько всё сделать, дал Ranorex, говорит записывать. Но Ranorex в моём случае пишет исключительно по координатам, сами кнопки на формах не находит. Потенциальная бомба при каких-то изменениях в будущем. Я решил попробовать CodedUI. Логика такая: контролы майкрософта должны хорошо распозноваться их же тулзой. Однако CodedUI решил тоже писать по координатам и ничего глубже формы не видит (тоже самое, что и у Ranorex). Программа Inspect видит все контролы без проблем. Но есть но, постараюсь объяснить поподробнее:
У окна много контролов, в том числе и те, которые мне нужны. Но самый первый контрол в списке идет без названия, тип “pane” и он закрывает все остальные контролы собой. В нем содержится два других “pane”, которые по размеру меньше и не закрывают мои контролы. Разработчики пробовали удалять их, но результата нет.

Я негодую (как же так, две такие тулзы и не могут найти простейшие контролы) и прошу вас помочь, у меня 2 вопроса:

  1. Если кто-то автоматизировал Access, то, пожалуйста, расскажите, какой тулзой и были ли какие-нибудь сложности?
  2. Что это за чертова pane, за которой скрывается всё?

#2

Ребята из 2GIS написали интересный фреймворк Winium позволяющий тестировать приложения написанные на Win32. Попробуйте его, заодно и расскажете :blush:
Вот пример с калькулятором


(Виталий Коряков) #3

Testcomplete?


(Black Box Blues) #4

А что именно надо проверить в Access?
Не проще ли проверять форму методами какой-нибудь библиотеки. Например, PypyODBC для Python.


(Vol) #5

Check out VBA Script, it’s able to create MS Access process, open document and do everything without UI. It should be more stable than using UI.