// QA และการทดสอบ

วิธีทดสอบโฟลว์การยืนยันตัวตนทาง SMS ของคุณเองแบบครบวงจร

ก่อนทุกการรีลีส คุณต้องมีหลักฐานว่าโฟลว์การสมัครและ OTP ของคุณยังใช้งานได้ — ว่าโค้ดส่ง มาถึง ตรวจสอบ และปฏิเสธได้อย่างถูกต้อง คู่มือนี้แสดงวิธีทดสอบโฟลว์การยืนยันของคุณเองโดยใช้ข้อมูลรับรองทดสอบของผู้ให้บริการ โค้ดมหัศจรรย์ แซนด์บ็อกซ์ และการตรวจสอบอัตโนมัติใน CI โดยไม่สแปมโทรศัพท์จริงหรือเสียเงินกับ SMS สด

คุณกำลังทดสอบอะไรจริง ๆ

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

  • ส่ง: มีการสร้างและจัดส่งโค้ดสำหรับหมายเลขที่ถูกต้อง
  • รับและตรวจสอบ: โค้ดที่ถูกต้องถูกยอมรับและเซสชันถูกยกระดับ
  • ปฏิเสธ: โค้ดที่ผิด หมดอายุ และใช้ซ้ำถูกปฏิเสธ
  • ขีดจำกัด: การจำกัดอัตราและช่วงพักการส่งซ้ำทำงานตามที่ออกแบบ
  • การสำรอง: การยกระดับช่องทางและสถานะข้อผิดพลาดแสดงผลอย่างถูกต้อง

ใช้ข้อมูลรับรองทดสอบและโค้ดมหัศจรรย์ของผู้ให้บริการ

ผู้ให้บริการรายใหญ่ทุกรายให้วิธีฝึกโฟลว์โดยไม่ส่งข้อความจริง Twilio มีข้อมูลรับรองทดสอบและหมายเลขโทรศัพท์มหัศจรรย์ที่จำลองความสำเร็จและการตอบกลับความล้มเหลวเฉพาะ; Vonage, Sinch และ MessageBird มีโหมดแซนด์บ็อกซ์และหมายเลขทดสอบ ใช้สิ่งเหล่านี้ในการรันบนเครื่องและ CI เพื่อให้ชุดทดสอบของคุณไม่เคยแตะผู้ให้บริการเครือข่ายจริง

  • Twilio: ข้อมูลรับรองทดสอบ + หมายเลขมหัศจรรย์ที่บังคับผลลัพธ์สำเร็จ/ไม่ถูกต้อง/ล้มเหลว
  • รายอื่น: คีย์ API แซนด์บ็อกซ์และหมายเลขทดสอบที่กำหนด
  • เก็บข้อมูลรับรองทดสอบและสดไว้ในการกำหนดค่าสภาพแวดล้อมที่แยกและตั้งชื่อชัดเจน
!

อย่ารันการทดสอบกับข้อมูลรับรองสดใน CI — บั๊กลูปเดียวส่งข้อความที่ต้องจ่ายเงินได้เป็นพัน และทำให้ผู้ส่งของคุณถูกตั้งค่าสถานะ

จัดสรรหมายเลขทดสอบที่คุณควบคุม

สำหรับการทดสอบแบบครบวงจรที่ส่งข้อความจริง ให้จัดสรรหมายเลขที่โปรแกรมได้ที่คุณเป็นเจ้าของเป็นผู้รับทดสอบ จากนั้นอ่านโค้ดที่ส่งถึงกลับผ่าน API การส่งข้อความของผู้ให้บริการและป้อนเข้าขั้นตอนตรวจสอบของคุณ เพราะคุณเป็นเจ้าของหมายเลขและแอป นี่เป็นการทดสอบวงปิดที่สะอาดของระบบของคุณเอง

  1. 1

    จัดสรรหมายเลขทดสอบ

    สร้างหมายเลขที่โปรแกรมได้ในบัญชีผู้ให้บริการของคุณ เฉพาะสำหรับสภาพแวดล้อมทดสอบ

  2. 2

    กระตุ้นการส่งของคุณ

    เรียกปลายทางสมัคร/ตรวจสอบของคุณเอง เพื่อให้แอปของคุณส่งโค้ดจริงไปยังหมายเลขทดสอบ

  3. 3

    อ่านโค้ดผ่าน API

    ดึงข้อความขาเข้าผ่าน API ของผู้ให้บริการและแยกโค้ดออกมาด้วยโปรแกรม

  4. 4

    ทำสำเร็จและยืนยัน

    ส่งโค้ดไปยังปลายทางตรวจสอบของคุณและยืนยันว่าเซสชันถูกยกระดับ; จากนั้นปล่อยหมายเลข

ทำอัตโนมัติใน CI

เชื่อมสิ่งข้างต้นเข้าไปในไปป์ไลน์ของคุณ เพื่อให้ตรวจสอบการยืนยันในทุกการบิลด์ ใช้เส้นทางจำลอง/แซนด์บ็อกซ์สำหรับการทดสอบหน่วยและการผสานรวมที่รวดเร็วซึ่งรันในทุกการคอมมิต และสงวนการทดสอบวงปิดจริง (ด้วยหมายเลขที่เป็นเจ้าของ) ไว้สำหรับสเตจรายคืนหรือก่อนรีลีส เพื่อควบคุมต้นทุน

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

ทดสอบการส่งถึง ไม่ใช่แค่ตรรกะ

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

!

ปัญหาการส่งถึงมักปรากฏรายประเทศหรือรายผู้ให้บริการเครือข่าย หมุนเวียนการติดตามของคุณข้ามส่วนผสมปลายทางจริงของคุณ — คู่มืออัตราการส่งถึงอธิบายว่าทำไม

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

ฉันทดสอบ OTP โดยไม่ส่ง SMS จริงได้อย่างไร?+

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

ฉันจะอ่านโค้ด OTP ในการทดสอบอัตโนมัติได้อย่างไร?+

จัดสรรหมายเลขที่โปรแกรมได้ที่คุณเป็นเจ้าของเป็นผู้รับทดสอบ จากนั้นดึงข้อความขาเข้าผ่าน API การส่งข้อความของผู้ให้บริการและแยกโค้ดในการทดสอบของคุณ เพราะคุณเป็นเจ้าของหมายเลขและแอป มันเป็นการทดสอบวงปิดที่สะอาดของโฟลว์ของคุณเอง

การทดสอบการยืนยันของฉันควรครอบคลุมอะไร?+

ทั้งเส้นทางที่ราบรื่น (โค้ดส่ง มาถึง ตรวจสอบ) และเส้นทางความล้มเหลว (โค้ดผิด โค้ดหมดอายุ โค้ดใช้ซ้ำ การจำกัดอัตรา และการสำรองช่องทาง) การจัดการความล้มเหลวคือที่ที่บั๊กจริงและความเสี่ยงยึดบัญชีส่วนใหญ่ซ่อนอยู่

การยืนยันควรรันในทุกการบิลด์ CI ไหม?+

รันการทดสอบจำลอง/แซนด์บ็อกซ์ที่รวดเร็วในทุกการคอมมิต และกำหนดการทดสอบส่งถึงจริงที่ช้ากว่าไว้รายคืนหรือก่อนรีลีส นั่นให้ความครอบคลุมตรรกะอย่างต่อเนื่องโดยไม่ต้องจ่ายค่า SMS ในทุกการพุช

EdgeGigs

อยากทดสอบโฟลว์การสมัครและ OTP แบบครบวงจรไหม?

จ้างนักพัฒนาที่ใส่ใจคุณภาพบน EdgeGigs เพื่อสร้างการทดสอบอัตโนมัติรอบโฟลว์การยืนยันของคุณเอง — รวมหมายเลขทดสอบ, แซนด์บ็อกซ์ และ CI

ค้นหานักพัฒนาบน EdgeGigs