Scratch for Java

VisualProbe()

Every arrangement that has to keep looking the way it looks.

ParityProbe covers what the library can be asked; this covers what it draws. The two are answerable in different ways: a number can be compared, where a picture can only be looked at - so the bugs that lived longest this side were the ones nothing could see. The speech bubble hung off the corner of the costume canvas rather than the sprite, with its tail pointing at nothing. The stage's display line sat in the top left instead of along the bottom. A text came out at 24pt where it should have been 14. Every one of those was found by somebody noticing.

Each scene below is set up, given a few frames to settle, and saved as a PNG. ./scripts/visual-parity.sh renders them again and compares. Keep them still: no timers, no randomness, nothing that moves, or the comparison will fail for reasons that are not a change in how things look.

This is the desktop against itself. The browser draws with a different renderer and a different font engine, so the two cannot be compared pixel for pixel - that would need a browser in the loop and a comparison that measures where things are rather than which pixels they are.

Syntax

Java

new VisualProbe(outputFolder)
VisualProbe()

Create Shareable URL

Select Sections