Windows desktop test automation with lazy locators, auto-waiting, and pytest integration.
Dolphin Desktop helps Python tests launch, find, and interact with Windows desktop applications through Microsoft UI Automation, Win32 automation, image matching, and selected integrations such as Java Access Bridge and Office COM.
pip install dolphin-desktopfrom dolphin_desktop import Desktop
desktop = Desktop(backend="uia")
app = desktop.launch("notepad.exe")
win = app.window(class_name="Notepad")
editor = win.get_by_role("Document")
editor.click()
editor.type_text("Hello, Dolphin!")
assert "Hello, Dolphin!" in editor.text()
app.kill()- Lazy locators that resolve only when an action or query runs.
- Auto-waiting for element actions and assertions.
- A pytest plugin with
desktopandlaunchfixtures. - UIA and Win32 backends for Windows desktop applications.
- Image-based fallback selectors with the
visionextra. - Trace, screenshot, video, recorder, spy, and project scaffold commands.
pip install dolphin-desktop pytest
dolphin doctor
dolphin init my-tests --yes
cd my-tests
pytest tests/ -vThe default scaffold creates a Notepad test and a small Page Object under objects/.
The documentation site is built with MkDocs from the docs/ directory:
uv run mkdocs serveKey pages:
docs/installation.mddocs/quickstart.mddocs/tutorials/first-test.mddocs/reference/index.mddocs/reference/cli.md
See CONTRIBUTING.md for setup instructions.
Maintained by DolphinSoft Kamil Gluszek.
- Website: https://dolphinsoft.pl
- Email: kontakt@dolphinsoft.pl