Projetos Python
O runner reconhece um projeto Python pelo pytest.ini na raiz do repositório e roda:
uv run pytest tests/test_proton_script.py::test_run_proton_execution --id_dataset_run=<id>
uv
A máquina precisa do uv no PATH do usuário que roda o runner. O uv instala, na primeira
execução, as dependências do projeto e o Python que o projeto pede (3.10 ou mais novo), quando a máquina não tem.
- Windows
- Linux
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
curl -LsSf https://astral.sh/uv/install.sh | sh
Abra um terminal novo e confira:
uv --version
Depois de instalar, reinicie o Runner: ele lê o PATH quando abre.
Por plataforma
| Plataforma do projeto | O que mais a máquina precisa |
|---|---|
| API | Nada além do uv. |
| Web (Playwright) | Nada no Windows: o navegador Chromium da Playwright é baixado na primeira execução. No Linux, as bibliotecas do sistema que o navegador usa (abaixo). |
| Mobile (Android) | O adb, o Appium e o aparelho. Ver Mobile (Android). |
| SAP GUI | Windows, o SAP GUI com o scripting habilitado e o Runner na sessão do usuário. Ver SAP GUI. |
| Desktop (Windows) | Windows e o Runner na sessão do usuário, com a tela desbloqueada. |
No Linux, instale uma vez as bibliotecas do navegador (o comando pede a senha de administrador):
uvx playwright install-deps chromium
Automações de desktop e de SAP GUI
As automações que mexem em janelas do Windows (pywinauto e SAP GUI Scripting) precisam de uma sessão de usuário aberta e desbloqueada:
- rode o Proton Runner com o mesmo usuário do Windows em que as janelas vão abrir;
- numa máquina virtual, deixe a sessão aberta e sem bloqueio de tela;
- uma sessão de área de trabalho remota minimizada ou desconectada pode parar a automação: prefira deixar a sessão aberta no console da máquina virtual.
Rodar na máquina antes do runner
Para conferir a máquina, rode o projeto nela, sem o Proton, como o projeto modelo ensina:
uv sync
uv run pytest
Se passar no terminal com o mesmo usuário do Windows, vai passar pelo runner.