0.0.1-alpha16
Rilis ini memperkenalkan dukungan untuk rangkaian pengujian AGP, peningkatan laporan pengujian HTML, dan perbaikan bug:
- Integrasi rangkaian pengujian: Menambahkan dukungan untuk menjalankan pengujian screenshot pratinjau Compose dengan rangkaian pengujian Plugin Android Gradle (AGP). Untuk mempelajari cara mengonfigurasi dan menjalankan rangkaian pengujian screenshot, lihat Pengujian screenshot dengan rangkaian pengujian.
- Peningkatan laporan pengujian HTML: Menambahkan kartu metadata header yang menampilkan detail kasus pengujian (nama, metode, pratinjau, varian, rangkaian, dan badge status) serta kotak ringkasan error yang mengategorikan kegagalan (seperti gambar referensi yang tidak ada atau ketidakcocokan dimensi) dengan fungsi salin cepat ke papan klip.
- Perbedaan visual dinamis: Perbedaan visual kini menggunakan gradien berkelanjutan dari sorotan halus untuk pergeseran piksel kecil hingga penekanan kontras tinggi untuk perbedaan besar, sehingga mencegah perubahan komponen bertingkat terhalang.
Rilis ini juga mencakup perbaikan bug berikut:
| Masalah | Deskripsi |
|---|---|
| Masalah #513276596 | Membantu memastikan bahwa error rendering Layoutlib langsung gagal dalam pengujian screenshot, bukan gagal secara diam-diam atau membuat gambar referensi kosong. |
0.0.1-alpha15
Rilis ini mencakup perbaikan bug berikut:
| Masalah | Deskripsi |
|---|---|
| masalah #500417360 | Memperbaiki error inisialisasi (NoClassDefFoundError) saat menjalankan pratinjau dengan Kotlin 2.1+ karena kurangnya dependensi kotlin-stdlib di pemuat class terisolasi framework Layoutlib. |
| masalah #384188032 | Memperbaiki error rendering saat meng-inflate objek ViewHolder di dalam factory Composable AndroidView. |
| masalah #351302272 | Mengatasi kegagalan pemuatan resource drawable di dalam pratinjau tempat resource berada di modul project turunan atau dependen. |
| masalah #482664893 | Memastikan bahwa tugas validasi gagal dengan tepat saat pengujian screenshot memunculkan pengecualian, bukan berhasil secara keliru dengan screenshot yang sudah tidak berlaku. |
| Masalah #497675618 | Mendukung instrumentasi class composable oleh agen cakupan JVM (seperti JaCoCo). |
| Masalah #498545960 | Nama file internal yang dihapus (misalnya, ImageVerifier.kt) dari stack trace error konsol JUnit untuk memperjelas output proses debug. |
| Masalah #385613865 | Menghapus penggunaan jalur absolut untuk gambar dalam file XML hasil pengujian, dan menggantinya dengan jalur relatif. |
| Masalah #513276596 | Memastikan kegagalan rendering dengan benar menggagalkan tugas pengujian screenshot, bukan meneruskan secara diam-diam dengan screenshot kosong. |
| Masalah #340639802 | Menyelesaikan konflik penyelesaian metode pratinjau saat pengujian salah dicocokkan dengan nama metode yang sepenuhnya memenuhi syarat yang cocok di set sumber utama. |
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 menggunakan kotlin-reflect atau serialisasi. |
0.0.1-alpha13
Rilis ini memperkenalkan:
- Kompatibilitas dengan JDK 17 atau yang lebih baru.
- 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 JDK tersebut 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/referencemenjadi{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}PreviewScreenshotRenderdihapus. Rendering gambar dimigrasikan ke JUnit Test Engine.Tugas
update{Variant}ScreenshotTestakan 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--updateFiltertelah dihapus.
0.0.1-alpha06
Rilis ini memperkenalkan:
Ambang Batas Perbedaan Gambar: Setelan ambang batas global baru ini 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.