Robolectric 4.9.1 ขึ้นไป: การตั้งค่าพร็อกซีสำหรับการดาวน์โหลด Android runtime
ส่งพร็อพเพอร์ตีพร็อกซีสำหรับดาวน์โหลดอาร์ทิแฟกต์ของ Robolectric ไปยัง JVM ทดสอบที่ดึงไดเพนเดนซีของ Android runtime
Robolectric สามารถดาวน์โหลดอาร์ทิแฟกต์ของ Android runtime ขณะที่การทดสอบทำงานอยู่ การที่เครื่องมือบิลด์แก้ไของค์ประกอบพึ่งพิงปกติของโปรเจกต์ได้สำเร็จไม่ได้พิสูจน์ว่าการดาวน์โหลดระหว่างการทดสอบนี้ใช้พร็อกซีเดียวกัน
Robolectric 4.9.1 และเวอร์ชันหลังจากนั้นบันทึกพร็อพเพอร์ตีระบบต่อไปนี้สำหรับตัวดาวน์โหลดนั้น:
robolectric.dependency.proxy.host=proxy.example
robolectric.dependency.proxy.port=8080ส่งค่าเหล่านี้ไปยัง JVM ที่รันการทดสอบ สำหรับการดาวน์โหลดอาร์ทิแฟกต์สาธารณะที่อนุญาตผ่านตัวกลาง HTTP ที่ไม่มีการยืนยันตัวตน ให้ใช้ที่อยู่จากรายการพร็อกซี HTTPในพร็อพเพอร์ตีโฮสต์และพอร์ตเหล่านี้ สำหรับโปรเจกต์ Android ที่ใช้ Groovy DSL ของ Gradle การกำหนดค่าที่เกี่ยวข้องอาจเป็น:
android {
testOptions {
unitTests.all {
systemProperty 'robolectric.dependency.proxy.host', 'proxy.example'
systemProperty 'robolectric.dependency.proxy.port', '8080'
}
}
}เก็บสิ่งนี้ไว้กับการกำหนดค่าการทดสอบที่มีอยู่ของโปรเจกต์ พร็อพเพอร์ตีที่ให้เฉพาะตัวเรียก Gradle ไม่ใช่หลักฐานว่า JVM ทดสอบที่แยกออกไปได้รับค่านั้น
สำหรับสภาพแวดล้อมทดสอบที่ตัดการเชื่อมต่อโดยเจตนา Robolectric ยังบันทึก robolectric.offline และ robolectric.dependency.dir ด้วย การจัดวางนั้นต้องให้อาร์ทิแฟกต์รันไทม์ที่ถูกต้องถูกวางไว้ในไดเรกทอรีที่ระบุ แคชออฟไลน์ของ Gradle เองไม่ได้แทนที่ไดเรกทอรีที่ตัวแก้ไขออฟไลน์ของ Robolectric คาดหวัง