Тестирование САПР-приложений вручную — это бесконечный цикл однотипных проверок после каждого релиза. Открыть файл, кликнуть тут, кликнуть там, проверить 3D-модель. Снова и снова. Один QA тратит на полный регресс неделю, а при этом риск пропустить баг остаётся высоким.
В этой статье я расскажу, как наша команда построила систему автотестирования для САПР с нуля на Python и PyAutoGUI. Мы создали три ключевых компонента: рекордер для захвата действий пользователя, систему доставки обновлений через FTP и виртуальные машины, и движок для воспроизведения тестов из JSON-сценариев.
Особенность подхода — модульная архитектура, где каждый блок решает свою задачу: от записи пользовательских действий до автоматической проверки результатов через сравнение скриншотов. Всё это работает в VirtualBox в headless-режиме с параллельным запуском нескольких тестов.
В статье вы найдёте примеры псевдокода, схемы взаимодействия модулей и практические советы по обработке сбоев, управлению виртуальными машинами через PowerShell и организации тестовых сценариев. Мы делимся опытом автоматизации там, где стандартные инструменты вроде Selenium не работают.