พร็อกซีของที่เก็บ Maven สามารถดึง dependency ได้โดยไม่ต้องกำหนดค่าคำขอ HTTP ที่การทดสอบทำ กำหนดค่าไคลเอนต์ใน JVM ของการทดสอบ

หากไคลเอนต์นั้นเคารพคุณสมบัติพร็อกซี HTTPS ของ Java ให้วางส่วนนี้ไว้ในองค์ประกอบ configuration ของปลั๊กอิน Surefire ที่เกี่ยวข้อง:

<systemPropertyVariables>
  <https.proxyHost>proxy.example</https.proxyHost>
  <https.proxyPort>8080</https.proxyPort>
</systemPropertyVariables>

แทนที่ปลายทางตัวอย่าง สำหรับการทดสอบกับปลายทางสาธารณะที่อนุญาตตัวกลางสาธารณะ รายการพร็อกซี HTTP เสนอผู้สมัครโฮสต์และพอร์ต โฮสต์และพอร์ตเป็นค่าที่แยกกัน เลือกตระกูลคุณสมบัติที่เหมาะกับสคีมาปลายทางและไลบรารี ส่วนไคลเอนต์ที่สร้างด้วยออบเจ็กต์พร็อกซีชัดเจนต้องมีอินเทอร์เฟซการกำหนดค่าของตัวเอง

โดยปกติ Surefire รันการทดสอบใน JVM ที่แยกสาขา ไม่ใช่ทุกตัวเลือกที่ใช้เปิด Maven จะไปถึงโปรเซสนั้น การค้นหาพร็อกซีระบบที่อ่อนไหวต่อการเริ่มต้น ต้องมีตัวเลือกนั้นใน JVM ของการทดสอบตอนเริ่มต้น แม้การทดสอบใช้โปรเซสเดียวกัน ไลบรารีอาจเพิกเฉยต่อคุณสมบัติพร็อกซีเริ่มต้นของ Java

รักษาปลายทางภายในโดยตรงให้ครอบคลุมด้วยกฎข้ามที่เหมาะสม แยกการพิสูจน์ตัวตนพร็อกซีออกจากการพิสูจน์ตัวตนปลายทาง และเปิดการตรวจสอบใบรับรองไว้ การปิดการแยกสาขาเปลี่ยนวิธีรันการทดสอบ การเปลี่ยนกระจก dependency เปลี่ยนการแก้ไขที่เก็บ ทั้งสองไม่ได้ให้เส้นทางไคลเอนต์ทดสอบที่ขาดหาย การคัดลอกคุณสมบัติระบบทั้งหมดอาจเปิดเผยความลับได้เช่นกัน

หากยังมีความล้มเหลว ให้บันทึก JVM ของการทดสอบ ไลบรารี HTTP เป้าหมาย พร็อกซีที่เลือก และขั้นตอนแรกที่ล้มเหลว ข้อสังเกตเหล่านั้นชี้ไปที่การกำหนดค่าของการทดสอบ พร้อมทำให้การดาวน์โหลดจากที่เก็บที่ทำงานอยู่เข้าใจได้

บทความที่เกี่ยวข้อง