GoldenFileComparator class Null safety

Compares image pixels against a golden image file.

Instances of this comparator will be used as the backend for matchesGoldenFile.

Instances of this comparator will be invoked by the test framework in the TestWidgetsFlutterBinding.runAsync zone and are thus not subject to the fake async constraints that are normally imposed on widget tests (i.e. the need or the ability to call WidgetTester.pump to advance the microtask queue).

What is Golden File Testing?

The term golden file refers to a master image that is considered the true rendering of a given widget, state, application, or other visual representation you have chosen to capture.

By keeping a master reference of visual aspects of your application, you can prevent unintended changes as you develop by testing against them.

Here, a minor code change has altered the appearance of a widget. A golden file test has compared the image generated at the time of the test to the golden master file that was generated earlier. The test has identified the change, preventing unintended modifications.

SampleImage
Golden Master ImageA golden master image
DifferenceThe pixel difference
Test image after modificationTest image

See also:

Implementers

Constructors

GoldenFileComparator()

Properties

hashCode int
The hash code for this object. [...]
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

compare(Uint8List imageBytes, Uri golden) Future<bool>
Compares the pixels of decoded png imageBytes against the golden file identified by golden. [...]
getTestUri(Uri key, int? version) Uri
Returns a new golden file Uri to incorporate any version number with the key. [...]
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toString() String
Returns a string representation of this object.
inherited
update(Uri golden, Uint8List imageBytes) Future<void>
Updates the golden file identified by golden with imageBytes. [...]

Operators

operator ==(Object other) bool
The equality operator. [...]
inherited

Static Methods

compareLists(List<int> test, List<int> master) Future<ComparisonResult>
Returns a ComparisonResult to describe the pixel differential of the test and master image bytes provided.