Дано
- Есть GUI приложение с закрытыми исходниками и открытым API с несколько «неточной» документацией. (далее - ПО)
- Есть open-source python-библиотека, которая нетривиально (в смысле установки) интегрируется в это приложение, и потом по веб-морде с ним общается)
- ПО имеет очень ограниченное управление из командной строки (или терминала), и, в основном, единственное, что можно сделать — запустить там проект
- Мы сейчас думаем, как нам завести в библиотеку тесты, и самым адекватным вариантом мне видится — собрать какой-нибудь контейнер, в котором будет уже запущенное ПО, со всеми открытыми окнами, проектом и т.п. Ну и потом при очередном тесте надо будет просто подрубиться и тестировать методом черного ящика.
- Хорошо бы все это тестировать заодно и мульти-платформенно (win/mac/lin)
Проблема в том, что я толком не представляю, куда копать. Пробую пока завести в докере, но идет туго, к тому же, параллельно там возникают проблемы не только с GUI, но и с аудио (т.к. без него ПО не работает). Конечно, чисто запустить было бы, наверное, быстрее через виртуальную машину, но я не очень в курсе, возможно ли где-то найти сервис (желательно с интеграцией в github), на котором можно было бы крутить виртуалки и вытаскивать еще из них результаты тестов?
В общем, буду очень признателен, если сообщество укажет на литературу по теме.