OpenCloud Desktop
Desktop GUI automation in Python for a cross-platform sync client, from Squish to open-source Appium, plus the CI pipeline behind it.
- Role
- Software Developer
- Company
- JankariTech
- Period
- May 2025 – now
- Links
- opencloud-eu/desktop
OpenCloud Desktop is the Qt client that keeps files in sync between a computer and an OpenCloud server, on Windows and Linux. I wrote its GUI tests in Python with Squish, and 48 of my pull requests were merged.
Testing what users actually do
My tests cover selective sync, virtual files, share permissions, syncing 1000 files and 50 MB files, and multibyte file names. Several needed Windows-specific fixes. Writing them turned up client crashes and sync bugs, which I reported.
- रिपोर्ट-२०८३.pdfwaiting
- 会議メモ.txtwaiting
- Ünïcødé-notes.mdwaiting
- shift-rota.xlsxwaiting
- pokhara/IMG_0001.jpgwaiting
- large-video.mp4waiting
From Squish to Appium
In 2026 the team moved the GUI suite from Squish, a commercial Qt testing tool, to Appium, the open-source automation framework, with behave running the Gherkin scenarios.
I ported three smoke-test suites: deleting files and folders, editing files, and login and logout. That meant rewriting page objects to use Appium locators, replacing Squish's waits with WebDriverWait, and converting the step definitions to behave.
Cache that expires on purpose
I redesigned the Woodpecker CI pipeline that purges the S3 build cache. It now runs as matrix jobs with a separate retention time for each cache path, instead of one rule for everything.