Published

Comparing screenshots between releases and more

Arnold Noronha
Arnold Noronha
Founder, Screenshotbot

Screenshotbot is designed over the developer experience, each of the decisions we make are focused on developers. However, today we’re adding an important feature that will make it much more useful to QA and Release Engineers.

We now make it easy to compare screenshots between any two releases. Actually, we went one step further, you can compare any two arbitrary Git commits: so perhaps you want to compare this mornings beta build against yesterdays.

How this works

Screenshotbot tracks screenshots per-channel. A channel typically might map to a build target or a Gradle module (though some customers just have one single channel for a project.) So between two commits, multiple channels might have changes.

On your top right, you should now see an option to compare two branches:

Image of Compare button dropdown

If you click “Compare branches” it will take you to a page where you can put in the commits you want to compare:

Dialog asking for commits to compare

Once you specify the commits (we do not support branch names at the moment, but more on that later), we link you to each channel that changed:

Result of image comparison
Clicking each link will show you the screenshots that changed in the channel

Pre-filling commit SHAs

Ideally, you might want to be able to specify release branch names directly into the form instead of commits. Unfortunately, we’ve chosen to not support this because Screenshotbot does not have access to your repositories, so Screenshotbot doesn’t know what each branch name correctly maps to.

Instead, you can either directly pass in the commits, or you can construct a pre-filled link from external build or release tools that link directly. You can pass in these parameters through HTTP parameters: ?repo=repo&sha1=sha&sha2=sha

Wrapping it up

It’s really satisfying to see the screenshot tests that you added for your own developer productivity being used across the organization to improve the release process. We hope you’ll give this a try let us know what your team thinks of it.

Did you enjoy this post? Share the knowledge!