Catatan Rilis Pengujian Screenshot Pratinjau Compose

0.0.1-alpha14

Rilis ini mencakup perbaikan bug dan peningkatan performa berikut:

Masalah Deskripsi
Masalah #469819154 Memperbaiki kebocoran memori di perender Compose.
masalah #470058578 Memperbaiki masalah UI yang berhenti berfungsi dan error memori saat memperbarui gambar referensi.
masalah #422412664 Memperbaiki error "command line melampaui batas sistem operasi" di Windows dan GitHub Actions.
masalah #437223807 Memperbaiki masalah resolusi aset dan resource dalam project multi-modul.
Masalah #464899800 Memperbaiki konflik plugin Gradle yang disebabkan oleh tabrakan penamaan di version.properties.
masalah #482433854 Memperbaiki error inisialisasi untuk composable yang menggunakan kotlin-reflect atau serialisasi.

0.0.1-alpha13

Rilis ini memperkenalkan:

  • Kompatibilitas dengan JDK 17 atau yang lebih tinggi.
  • Perbaikan bug dan peningkatan integrasi dengan Android Studio.

0.0.1-alpha12

Rilis ini memperkenalkan:

  • Kompatibilitas dengan Plugin Android Gradle (AGP) 9.0.
  • Dukungan untuk menjalankan uji screenshot di JDK 24 dan yang lebih tinggi.
  • Dukungan untuk mengonfigurasi ukuran heap maksimum.
  • Memperbaiki kegagalan rendering dan meningkatkan stabilitas pengujian.
  • Meningkatkan kualitas pelaporan untuk menyertakan perbedaan persentase dan metadata lainnya yang terkait dengan gambar baru dan rujukan.

0.0.1-alpha11

Rilis ini memperkenalkan:

  • Kompatibilitas dengan Plugin Android Gradle (AGP) 8.13.
  • Menambahkan dukungan untuk mengurai drawable XML dengan nilai desimal, terlepas dari lokalitas mesin host.
  • Untuk mesin host yang menggunakan JDK 24 atau yang lebih tinggi, JDK yang kompatibel (11-23) akan diambil, asalkan salah satunya diinstal.

0.0.1-alpha10

Rilis ini memperkenalkan:

  • Mulai versi ini, Anda harus menandai semua fungsi pratinjau dengan anotasi @PreviewTest. Pratinjau tanpa anotasi tidak akan dieksekusi.

  • Direktori gambar referensi diubah dari {module}/src/{variant}/screenshotTest/reference menjadi {module}/src/screenshotTest{Variant}/reference. Hal ini dilakukan untuk memastikan gambar referensi yang dihasilkan tidak menjadi bagian dari kode produksi, dan agar selaras dengan struktur direktori jenis pengujian lainnya.

  • Tugas {variant}PreviewScreenshotRender dihapus. Rendering gambar dimigrasikan ke JUnit Test Engine.

  • Tugas update{Variant}ScreenshotTest akan membandingkan gambar rendering baru dengan gambar referensi sebelum memperbarui. Fitur ini hanya akan memperbarui gambar yang memiliki perbedaan lebih besar dari nilai minimum yang ditentukan. Flag command line --updateFilter dihapus.

0.0.1-alpha06

Rilis ini memperkenalkan:

Ambang Perbedaan Gambar: Setelan ambang batas global baru ini akan memungkinkan Anda mendapatkan kontrol yang lebih baik atas perbandingan screenshot. Untuk mengonfigurasi, perbarui build.gradle.kts modul Anda:

    testOptions {
        screenshotTests {
            imageDifferenceThreshold = 0.0001f // 0.01%
        }
    }

Nilai minimum ini akan diterapkan ke semua pengujian screenshot yang ditentukan dalam modul.

  • Perbaikan Bug: Beberapa bug Compose Renderer dan menambahkan dukungan untuk compose kosong.
  • Peningkatan Performa: Algoritma perbedaan gambar diperbarui agar lebih cepat.