mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-02 19:17:10 +00:00
cd4bd5a19419b5c9f1ac8f9d33a51c83c69ac545
Add pollUntilStable and structuralHash helpers; wire them into the Stub, Maestro, and iOS backends' waitForIdle. The structural hash ignores bounds-only flicker (measure passes) but trips on any change in resource-id/class/content-desc/text, so a Compose cross-fade where both source and destination composables are momentarily alive no longer slips through Maestro's waitForAppToSettle and contaminates the next hierarchy fetch.
sanderling
Autonomous property-based testing for mobile and web apps. Specs in TypeScript. Core in Go.
Alpha. Android, iOS, and web (Chrome). Full scope in the v0.1.0 roadmap.
Docs
- Getting started
- Writing specs
sanderling inspectUI- Examples: folio (KMP, Android/iOS/web), folio-web (React + Vite)
- Architecture
After a sanderling test run, browse traces locally with sanderling inspect. It opens a web UI for stepping through actions, screenshots, snapshots, residual formulas, and exceptions.
sanderling, a wading bird that probes the shoreline for bugs that lie beneath.
Languages
Go
74.6%
TypeScript
15.2%
Kotlin
5.5%
Shell
2.7%
Swift
1%
Other
0.9%