Skip to Content
Testingตัวอย่าง Walk-and-Fix

ตัวอย่าง Walk-and-Fix

Walk-and-Fix เปลี่ยนการค้นพบของผู้เดินอัตโนมัติให้กลายเป็น FixIntent ที่ขอบเขตเจ้าของ บันทึกเพื่อให้ทีมสามารถคัดแยก มอบหมาย และปิดข้อบกพร่องผ่าน API ที่เสถียร

พื้นผิวการวางแผนสำหรับการปรับใช้ปัจจุบันเท่านั้น: การสร้างแพตช์อัตโนมัติ ไม่ได้รับการปฏิบัติ run_fix_cycle เสนอแผนแต่ไม่ได้ดำเนินการ โปรแกรมเดียวที่ใช้แก้ไขไฟล์อะแดปเตอร์ภายใน VM ภายในเครื่องเดิม นั่น ขัดแย้งกับโมเดลการปรับใช้แอปที่ไม่เปลี่ยนรูปแบบในปัจจุบัน และจะต้องไม่นำไปใช้ เป็นเส้นทางการซ่อมแซมการผลิต โหมด GitHub PR และผู้ให้บริการปรับใช้ซ้ำไม่ได้ นำไปปฏิบัติแล้ว

ขั้นตอนการทำงานที่รองรับ

  1. วิ่ง เดินอัตโนมัติ
  2. ทบทวนสิ่งที่ค้นพบและหลักฐาน
  3. เรียก propose_fix เพื่อสร้างความตั้งใจที่ติดตามได้ หรือเรียก run_fix_cycle เพื่อสร้าง ความตั้งใจที่จะชุดตัวบล็อก/การค้นพบหลักที่มีขอบเขตจำกัด
  4. เปลี่ยนแหล่งเก็บข้อมูลต้นทางผ่านกระบวนการตรวจสอบปกติของคุณ
  5. สร้างและปรับใช้ตัวแปรที่ไม่เปลี่ยนรูปแบบใหม่
  6. วิ่งซ้ำและเปรียบเทียบกับการเดินครั้งก่อน
  7. เรียก close_finding หลังจากที่หลักฐานใหม่แสดงให้เห็นว่าการค้นพบนี้เท่านั้น แก้ไข ทำซ้ำ ไม่ใช่จุดบกพร่อง หรือจงใจไม่แก้ไข

ซึ่งจะทำให้การควบคุมแหล่งที่มา ประวัติการตรวจสอบ และอาร์ติแฟกต์ที่นำไปใช้งานมีความสอดคล้องกัน

เครื่องมือและขอบเขต

เครื่องมือพฤติกรรมปัจจุบัน
propose_fixสร้าง FixIntent; ไม่สร้างโค้ด
run_fix_cycleสร้างแผนมีขอบเขต ไม่ใช้การเปลี่ยนแปลง
get_fix_intent / list_fix_intentsอ่านบันทึกเจตนาที่เป็นเจ้าของ
close_findingบันทึกการจัดการสำหรับการค้นพบที่เป็นเจ้าของ
apply_fixการแทนที่ไฟล์เต็ม local-VM แบบเดิม ไม่ใช่เวิร์กโฟลว์การปรับใช้ที่ไม่เปลี่ยนรูป

apply_fix ยอมรับเนื้อหาไฟล์แบบเต็ม ไม่ใช่ส่วนต่างแบบรวม มันควรจะถูกจำกัด ไปจนถึงการปรับใช้เครื่องทดสอบรุ่นเก่าแบบใช้แล้วทิ้งโดยที่ผู้ปฏิบัติงานยอมรับอย่างชัดเจน ว่าการเปลี่ยนแปลงอยู่นอกการควบคุมแหล่งที่มาและจะหายไปเมื่อปรับใช้ใหม่

หลักฐานที่จำเป็นในการปิดผลการสืบค้น

การสร้างหรือการปรับใช้ที่ประสบความสำเร็จนั้นไม่เพียงพอ จับภาพ:

  • การแก้ไขแหล่งที่มาที่มีการเปลี่ยนแปลง;
  • ID และสถานะการปรับใช้ทดแทน
  • สถานการณ์การผ่านหรือการเดินแบบใหม่ที่ใช้เส้นทางที่ได้รับผลกระทบ และ
  • ความแตกต่างที่แสดงการค้นพบที่ได้รับการแก้ไขโดยไม่มีตัวบล็อกใหม่หรือการถดถอยที่สำคัญ

หากการทดสอบไม่สามารถสร้างเส้นทางเดิมได้ ให้เปิดการค้นพบทิ้งไว้หรือ บันทึกข้อจำกัดของหลักฐานไว้ในการจัดการ

ที่เกี่ยวข้อง