Las comparaciones "golden" específicas de la web ya no son compatibles
La clase `WebGoldenComparator` y la instancia de nivel superior `webGoldenComparator` están deprecadas, pendientes de eliminación, y los backends de renderizado web (incluyendo tanto CanvasKit como skWasm) ahora usan `GoldenFileComparator` y `goldenFileComparator` directamente.
Resumen
#El paquete flutter_test y la herramienta flutter ya no utilizarán la
variable de nivel superior webGoldenComparator,
y en su lugar usarán la variable de nivel superior original
goldenFileComparator
(al igual que las plataformas que no son web).
Para los usuarios de flutter_test, estos cambios se realizarán automáticamente.
Contexto
#Originalmente, WebGoldenComparator
se añadió para
el backend HTML de Flutter web, ya que no era posible crear un
PNG codificado (búfer de bytes) y se necesitaba una nueva API. Dado que el backend HTML se está
deprecando y eliminando, esta API separada ya no es necesaria.
Guía de migración
#Para la mayoría de los usuarios, no se requieren cambios (aparte de migrar fuera del backend
HTML, lo cual no se cubre aquí), la herramienta flutter configurará automáticamente
goldenFileComparator
y lo utilizará (cuando se use un backend web
que no sea HTML).
Para los usuarios que implementan un WebGoldenComparator personalizado, deberán
migrar la implementación a GoldenFileComparator. Afortunadamente, los
backends Canvas Kit y SkWasm ya requerían métodos similares (compareButes
y updateBytes).
Por ejemplo:
// Before
class MyWebGoldenComparator extends WebGoldenComparator {
@override
Future<bool> compare(double width, double height, Uri golden) {
// will be removed in the migration
}
@override
Future<bool> update(double width, double height, Uri golden) {
// will be removed in the migration
}
@override
Future<bool> compareBytes(Uint8List bytes, Uri golden) {
// will be renamed "compare"
}
@override
Future<bool> updateBytes(Uint8List bytes, Uri golden) {
// will be renamed "update" and the parameter orders swapped
}
}
// After
class MyGenericGoldenComparator extends GoldenFileComparator {
@override
Future<bool> compare(Uint8List bytes, Uri golden) {
// used to be "compareBytes"
}
@override
Future<bool> update(Uri golden, Uint8List bytes) {
// used to be "updateBytes"
}
}
Timeline
#Introducido en la versión: 3.29.0-0.0.pre
En la versión estable: 3.29
Referencias
#Issues relevantes:
- Issue 145954, donde el renderizador HTML fue deprecado.
- Issue 160261, donde se propuso consolidar
GoldenFileComparatoryWebGoldenComparator.
PRs relevantes:
- PR 161196, donde
WebGoldenComparatorfue deprecado y la CLI defluttercomenzó a usargoldenFileComparator.
A menos que se indique lo contrario, la documentación de este sitio refleja Flutter 3.44.0. Página actualizada por última vez el 2026-05-11. Ver código fuente oreportar un problema.