การทดสอบเริ่มต้น
การทดสอบจะถูกเปิดใช้งานตามค่าเริ่มต้นในสูตรอาหารมาตรฐาน โดยมีที่กำหนดไว้ล่วงหน้าสี่รายการ
ชื่อการทดสอบ: boot, login, packages และ network เหล่านี้เป็นแขกตัวน้อย
เช็คไม่ใช่ชุดการยอมรับที่สมบูรณ์ สูตรอาหารสามารถปิดการทดสอบหรือ
แทนที่รายการ และสิ่งประดิษฐ์บางประเภทใช้สัญญาที่แคบกว่า
สิ่งที่ค่าเริ่มต้นพิสูจน์ได้จริง
| ทดสอบ | ดำเนินการตรวจสอบ | ไม่ได้พิสูจน์ |
|---|---|---|
boot | uptime ออกจากระบบสำเร็จผ่านตัวแทนรับเชิญ QEMU | ทุกเส้นทางของ bootloader การบูตด้วยฮาร์ดแวร์ หรือไม่มีคำเตือนเคอร์เนล |
login | whoami สามารถรันผ่านรูท guest-agent channel | รหัสผ่านแบบโต้ตอบ, SSH-key, PAM, desktop-greeter หรือการเข้าสู่ระบบของผู้ใช้ปลายทาง |
packages | หนึ่งใน dpkg --list, rpm -qa หรือ pacman -Q สำเร็จ | มีการติดตั้งทุกแพ็คเกจที่ร้องขอโดยพรอมต์ |
network | DNS แก้ไข example.com และการเชื่อมต่อ TCP ไปยังพอร์ต 443 สำเร็จหลังจากลองใหม่แบบมีขอบเขต | ความสมบูรณ์ของอินเทอร์เน็ตทั่วไป เนื้อหา HTTP ทุกอินเทอร์เฟซ หรือการออกแบบที่มีช่องว่างอากาศ |
เส้นทาง Ubuntu 24.04 CIS จะลบการตรวจสอบเครือข่ายทั่วไปและใช้ การยืนยันคุณสมบัติที่มีรั้วรอบขอบชิดแทน สูตรที่ไม่ต้องคาดหวัง เส้นทางอินเทอร์เน็ตสามารถแปลงการตรวจสอบเครือข่ายทั่วไปที่ล้มเหลวเป็นคำเตือนได้
การตรวจสอบคุณสมบัติและความสามารถ
รองชนะเลิศยังรวมการตรวจสอบที่จัดทำโดยข้อมูลเมตาของคุณลักษณะที่เปิดใช้งานแบบเดิม ไฟล์ทดสอบ hook, แผนความสามารถแช่แข็ง, การทดสอบแบบกำหนดเองที่ชัดเจน และอื่นๆ การทดสอบเกณฑ์มาตรฐาน การยืนยันที่ซ้ำกันจะถูกลบออก การยืนยันด้วยความรู้ พารามิเตอร์ที่ขาดหายไปจะถูกทิ้งพร้อมกับคำเตือนของเซิร์ฟเวอร์ ทบทวนผลลัพธ์ แผนการทดสอบเพื่อให้เช็คที่ตกหล่นจะไม่ถูกเข้าใจผิดว่าผ่าน
ตัวอย่างรวมถึงการตรวจสอบพอร์ต SSH ที่กำหนดค่าไว้ สถานะบริการ คำขอ แพ็คเกจหรือสิ่งประดิษฐ์เฉพาะสูตร ความครอบคลุมขึ้นอยู่กับการเปิดใช้งาน คุณลักษณะ: การรวมคุณลักษณะไม่ได้รับประกันว่าคุณลักษณะจะมีด้วยตัวมันเอง ชุดการยืนยันที่สมบูรณ์
กำลังอ่านผลลัพธ์
ใช้แถวการยืนยันและหลักฐาน ไม่ใช่แค่ป้ายสถานะรวม:
passedหมายถึงการตรวจสอบที่ปฏิบัติการได้ส่งคืนผลลัพธ์ที่คาดหวังfailedหมายถึง เช็คทำงานและขัดแย้งกับความคาดหวังerrorหมายความว่าสายรัดไม่สามารถตัดสินได้skippedหมายความว่าการตรวจสอบไม่ทำงาน เช่น เนื่องจาก VM เป้าหมายคือ ไม่อยู่
ข้อผิดพลาดและการข้ามไม่ผ่าน ภาพที่เสร็จสมบูรณ์และการทดสอบการทำงานที่ผ่านการทดสอบ รัฐที่แยกจากกัน การรับรองเป็นประตูที่สาม
กำหนดเกณฑ์การยอมรับที่เข้มงวดยิ่งขึ้น
สำหรับปริมาณงานจริง ให้เพิ่มการยืนยันที่เกี่ยวข้องกับพร้อมท์ ตัวอย่างเช่น:
{
"description": "Nginx serves the local health endpoint",
"assertions": [
{
"type": "service_running",
"description": "Nginx is active",
"params": { "service": "nginx" }
},
{
"type": "http_responds",
"description": "Health endpoint returns 200",
"params": { "url": "http://localhost/health", "status": 200 }
}
]
}จากนั้นตรวจสอบอิมเมจที่สร้างขึ้นในคอนโซล และสำหรับการอ้างสิทธิ์ที่เกี่ยวข้องกับฮาร์ดแวร์ ทดสอบกับฮาร์ดแวร์ตัวแทน ดู Custom assertions และ Assertion types