หมายเหตุประจำรุ่นสำหรับการทดสอบภาพหน้าจอของฟีเจอร์สร้างตัวอย่าง

0.0.1-alpha15

รุ่นนี้มีการแก้ไขข้อบกพร่องต่อไปนี้

ปัญหา คำอธิบาย
issue #500417360 แก้ไขข้อขัดข้องในการเริ่มต้น (NoClassDefFoundError) เมื่อเรียกใช้ตัวอย่างด้วย Kotlin 2.1 ขึ้นไปเนื่องจากไม่มีทรัพยากร Dependency kotlin-stdlib ในตัวโหลดคลาสแบบแยกของเฟรมเวิร์ก Layoutlib
issue #384188032 แก้ไขข้อขัดข้องในการแสดงผลเมื่อ Inflate ออบเจ็กต์ ViewHolder ภายใน Factory AndroidView ที่เป็น Composable
issue #351302272 แก้ไขข้อผิดพลาดในการโหลดทรัพยากรที่ถอนออกได้ภายในตัวอย่างที่ทรัพยากรอยู่ในโมดูลโปรเจ็กต์ที่อยู่ระดับเดียวกันหรือเป็นทรัพยากร Dependency
issue #482664893 ตรวจสอบว่างานการตรวจสอบล้มเหลวอย่างเหมาะสมเมื่อการทดสอบภาพหน้าจอแสดงข้อยกเว้น แทนที่จะสำเร็จอย่างไม่ถูกต้องด้วยภาพหน้าจอที่ล้าสมัย
issue #497675618 รองรับการวัดประสิทธิภาพของคลาสที่ใช้ Compose โดยเอเจนต์การครอบคลุมของ JVM (เช่น JaCoCo)
issue #498545960 นำชื่อไฟล์ภายใน (เช่น ImageVerifier.kt) ออกจากสแต็กเทรซข้อผิดพลาดของคอนโซล JUnit เพื่อให้เอาต์พุตการแก้ไขข้อบกพร่องชัดเจนขึ้น
issue #385613865 นำการใช้เส้นทางแบบสัมบูรณ์สำหรับรูปภาพในไฟล์ XML ของผลการทดสอบออก แล้วแทนที่ด้วยเส้นทางแบบสัมพัทธ์
issue #513276596 ตรวจสอบว่าข้อผิดพลาดในการแสดงผลทำให้งานการทดสอบภาพหน้าจอไม่สำเร็จอย่างถูกต้อง แทนที่จะผ่านไปอย่างเงียบๆ ด้วยภาพหน้าจอว่างเปล่า
issue #340639802 แก้ไขความขัดแย้งในการแก้ปัญหาเมธอดตัวอย่างที่การทดสอบจับคู่กับชื่อเมธอดที่มีคุณสมบัติครบถ้วนที่ตรงกันในชุดแหล่งที่มาหลักอย่างไม่ถูกต้อง

0.0.1-alpha14

รุ่นนี้มีการแก้ไขข้อบกพร่องและปรับปรุงประสิทธิภาพต่อไปนี้

ปัญหา คำอธิบาย
issue #469819154 แก้ไขปัญหาหน่วยความจำรั่วไหลในตัวแสดงผล Compose
issue #470058578 แก้ไขปัญหา UI ค้างและข้อผิดพลาดเกี่ยวกับหน่วยความจำเมื่ออัปเดตรูปภาพอ้างอิง
issue #422412664 แก้ไขข้อผิดพลาด "บรรทัดคำสั่งเกินขีดจำกัดของระบบปฏิบัติการ" ใน Windows และ GitHub Actions
issue #437223807 แก้ไขปัญหาการแก้ปัญหาทรัพยากรและชิ้นงานในโปรเจ็กต์แบบหลายโมดูล
issue #464899800 แก้ไขความขัดแย้งของปลั๊กอิน Gradle ที่เกิดจากการตั้งชื่อซ้ำใน version.properties
issue #482433854 แก้ไขข้อผิดพลาดในการเริ่มต้นสำหรับคอมโพสได้โดยใช้ kotlin-reflect หรือการซีเรียลไลซ์

0.0.1-alpha13

รุ่นนี้มีการเปิดตัวสิ่งต่อไปนี้

  • ความเข้ากันได้กับ JDK 17 ขึ้นไป
  • การแก้ไขข้อบกพร่องและการผสานรวมกับ Android Studio ที่ได้รับการปรับปรุง

0.0.1-alpha12

รุ่นนี้มีการเปิดตัวสิ่งต่อไปนี้

  • ความเข้ากันได้กับปลั๊กอิน Android Gradle (AGP) 9.0
  • รองรับการเรียกใช้การทดสอบภาพหน้าจอบน JDK 24 ขึ้นไป
  • รองรับการกำหนดค่าขนาดฮีปสูงสุด
  • แก้ไขข้อผิดพลาดในการแสดงผลและปรับปรุงความเสถียรของการทดสอบ
  • ปรับปรุงการรายงานให้รวมความแตกต่างเป็นเปอร์เซ็นต์และข้อมูลเมตาอื่นๆ ที่เกี่ยวข้องกับรูปภาพใหม่และรูปภาพอ้างอิง

0.0.1-alpha11

รุ่นนี้มีการเปิดตัวสิ่งต่อไปนี้

  • ความเข้ากันได้กับปลั๊กอิน Android Gradle (AGP) 8.13
  • เพิ่มการรองรับการแยกวิเคราะห์ Drawable XML ที่มีค่าทศนิยมโดยไม่คำนึงถึงภาษาของเครื่องโฮสต์
  • สำหรับเครื่องโฮสต์ที่ใช้ JDK 24 ขึ้นไป ระบบจะเลือก JDK ที่เข้ากันได้ (11-23) หากมีการติดตั้ง

0.0.1-alpha10

รุ่นนี้มีการเปิดตัวสิ่งต่อไปนี้

  • ตั้งแต่เวอร์ชันนี้เป็นต้นไป คุณต้องใส่คำอธิบายประกอบ @PreviewTest ในฟังก์ชันตัวอย่างทั้งหมด ระบบจะไม่เรียกใช้ตัวอย่างที่ไม่มีคำอธิบายประกอบ

  • เปลี่ยนไดเรกทอรีรูปภาพอ้างอิงจาก {module}/src/{variant}/screenshotTest/reference เป็น {module}/src/screenshotTest{Variant}/reference เพื่อให้แน่ใจว่ารูปภาพอ้างอิงที่สร้างขึ้น จะไม่เป็นส่วนหนึ่งของโค้ดโปรดักชัน และเพื่อให้ สอดคล้องกับโครงสร้างไดเรกทอรีของการทดสอบประเภทอื่นๆ

  • นำงาน {variant}PreviewScreenshotRender ออก ย้ายการแสดงผลรูปภาพไปยัง JUnit Test Engine

  • งาน update{Variant}ScreenshotTest จะเปรียบเทียบรูปภาพการแสดงผลใหม่กับรูปภาพอ้างอิงก่อนที่จะอัปเดต โดยจะอัปเดตรูปภาพที่มีความแตกต่างมากกว่าเกณฑ์ที่ระบุเท่านั้น นำแฟล็กบรรทัดคำสั่ง --updateFilter ออก

0.0.1-alpha06

รุ่นนี้มีการเปิดตัวสิ่งต่อไปนี้

เกณฑ์ความแตกต่างของรูปภาพ: การตั้งค่าเกณฑ์ส่วนกลางใหม่นี้จะช่วยให้คุณควบคุมการเปรียบเทียบภาพหน้าจอได้ละเอียดยิ่งขึ้น หากต้องการกำหนดค่า ให้อัปเดต build.gradle.kts ของโมดูลดังนี้

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

เกณฑ์นี้จะใช้กับการทดสอบภาพหน้าจอทั้งหมดที่กำหนดไว้ในโมดูล

  • การแก้ไขข้อบกพร่อง: แก้ไขข้อบกพร่องบางอย่างของตัวแสดงผล Compose และเพิ่มการรองรับ Compose ว่างเปล่า
  • การปรับปรุงประสิทธิภาพ: อัปเดตอัลกอริทึมการเปรียบเทียบรูปภาพให้เร็วขึ้น