0Pricing
Swift Academy · บทเรียน

กลุ่มคำยืนยัน XCTAssert และคำยืนยันที่โยนข้อผิดพลาด

ใช้ XCTAssertEqual, XCTAssertThrowsError และ XCTUnwrap อย่างปลอดภัย

กลุ่มคำยืนยัน XCTAssert และคำยืนยันที่โยนข้อผิดพลาด เป็นบทเรียน Swift Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Swift Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Swift Academy มีบทเรียนทั้งหมด 4 บทเรียน

XCTAssert และ XCTAssertTrue

XCTAssert และ XCTAssertTrue จะทำให้การทดสอบล้มเหลวหากเงื่อนไขเป็นเท็จ

XCTAssert(user.isLoggedIn)
XCTAssertTrue(cart.isEmpty, "Cart should be empty after clear()")

XCTAssertFalse

XCTAssertFalse จะทำให้การทดสอบล้มเหลวหากเงื่อนไขเป็นจริง

XCTAssertFalse(session.isExpired, "Fresh session should not be expired")

XCTAssertEqual

XCTAssertEqual จะทำให้การทดสอบล้มเหลวหากค่าทั้งสองไม่เท่ากัน ค่าทั้งสองต้องสอดคล้องกับ Equatable

XCTAssertEqual(calculator.add(2, 3), 5)
XCTAssertEqual(user.name, "Alice", "Name should match the fixture")

XCTAssertNotEqual

XCTAssertNotEqual จะทำให้การทดสอบล้มเหลวหากค่าทั้งสองเท่ากัน

XCTAssertNotEqual(originalHash, updatedHash)

XCTAssertNil และ XCTAssertNotNil

ใช้ทดสอบค่าที่เลือกได้: ให้การทดสอบล้มเหลวเมื่อค่าไม่ใช่ nil หรือเป็น nil ตามลำดับ

XCTAssertNil(service.error, "No error expected after successful fetch")
XCTAssertNotNil(result, "Result should be non-nil on success")

XCTAssertThrowsError

ให้การทดสอบล้มเหลวหากนิพจน์ไม่โยนข้อผิดพลาด โดยอาจตรวจสอบข้อผิดพลาดที่ถูกโยนได้

XCTAssertThrowsError(try parser.parse("invalid json")) { error in
  XCTAssertEqual(error as? ParseError, .invalidInput)
}

XCTAssertNoThrow

ให้การทดสอบล้มเหลวหากนิพจน์ DOES โยนข้อผิดพลาด

XCTAssertNoThrow(try parser.parse(validJSON))

XCTUnwrap

XCTUnwrap แกะค่าที่เลือกได้และทำให้การทดสอบล้มเหลวหากค่าเป็น nil ซึ่งสะอาดกว่า guard let + XCTFail

let user = try XCTUnwrap(service.currentUser)
XCTAssertEqual(user.name, "Bob")

XCTAssertEqual พร้อมค่าความคลาดเคลื่อน

สำหรับการเปรียบเทียบเลขทศนิยม ให้ระบุค่าความคลาดเคลื่อนเพื่อรองรับความคลาดเคลื่อนด้านความแม่นยำ

XCTAssertEqual(result, 3.14159, accuracy: 0.0001)

ข้อความความล้มเหลวแบบกำหนดเอง

ฟังก์ชัน XCTAssert ทั้งหมดรับพารามิเตอร์ข้อความที่ไม่บังคับ เพื่อให้ผลลัพธ์เมื่อการทดสอบล้มเหลวชัดเจนยิ่งขึ้น

XCTAssertEqual(items.count, 3, "Expected 3 items after insert, got \(items.count)")

XCTExpectFailure

ทำเครื่องหมายความล้มเหลวที่คาดไว้ เพื่อให้รายงานเป็นความสำเร็จใน CI เหมาะสำหรับข้อบกพร่องที่ทราบแล้วแต่ยังไม่ได้แก้ไข

XCTExpectFailure("Known issue: rdar://12345") {
  XCTAssertEqual(brokenFunction(), expectedValue)
}

ตรวจสอบอย่างรวดเร็ว

ฟังก์ชัน XCTest ใดที่แกะค่าที่เลือกได้อย่างปลอดภัยและทำให้การทดสอบล้มเหลวหากค่าเป็น nil

สรุปบทเรียน

ตระกูลการยืนยันของ XCTest ได้แก่ XCTAssert/True/False, XCTAssertEqual/NotEqual, XCTAssertNil/NotNil, XCTAssertThrowsError/NoThrow และ XCTUnwrap เพิ่มข้อความที่สื่อความหมายเสมอ ใช้ XCTExpectFailure สำหรับความล้มเหลวที่ทราบและติดตามอยู่

คำถามที่พบบ่อย

บทเรียน “กลุ่มคำยืนยัน XCTAssert และคำยืนยันที่โยนข้อผิดพลาด” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “กลุ่มคำยืนยัน XCTAssert และคำยืนยันที่โยนข้อผิดพลาด” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Swift Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Swift Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “กลุ่มคำยืนยัน XCTAssert และคำยืนยันที่โยนข้อผิดพลาด”

ใช้ XCTAssertEqual, XCTAssertThrowsError และ XCTUnwrap อย่างปลอดภัย คุณปฏิบัติ Swift Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Swift Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Swift Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “กลุ่มคำยืนยัน XCTAssert และคำยืนยันที่โยนข้อผิดพลาด” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Swift Academy นี้ได้ไหม

ได้ บทเรียน Swift Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การตั้งค่า การล้างข้อมูล และเมธอดการทดสอบของ XCTestCase
  2. กลุ่มคำยืนยัน XCTAssert และคำยืนยันที่โยนข้อผิดพลาด
  3. การจำลองตามโพรโทคอลและการฉีกการพึ่งพา
  4. การทดสอบแบบอะซิงโครนัสและการวัดประสิทธิภาพ
← กลับไปที่ Swift Academy