Use cases
Visual QA assertions: assert on pixels, not selectors
Selector-based UI tests break whenever a redesign moves a class name. Ask Simo what the screen shows instead.
The assertion
expect(simo("Is the error dialog visible?")).toBeAbove(0.9)The assertion survives a redesign that breaks every CSS selector, because it reads the screenshot the way a person would.
Why it fits a test suite
- Milliseconds per assertion, so it does not slow the suite down.
- Probabilities, not prose, so the assertion is a plain numeric comparison.
- Many assertions per screenshot cost little more than one: ask “is the banner showing, is the cart empty, is the button disabled?” in one request.
Related
The same read-once, many-questions approach powers agent supervision. See how Simo works.
Frequently asked questions
How does a visual assertion pass or fail?
The question is a Yes/No. You compare Simo’s probability to a threshold, for example above 0.9, in the test itself.