คำถามและคำตอบในการสัมภาษณ์การทดสอบ API 50 อันดับแรก (2026)
กำลังเตรียมตัวสำหรับการสัมภาษณ์งานทดสอบ API อยู่ใช่ไหม? การคาดการณ์ประเภทของคำถามที่คุณอาจเจอเป็นสิ่งสำคัญ วลี “{{keyword}}” สะท้อนให้เห็นถึงความสำคัญของมันโดยตรงping เส้นทางอาชีพและการเติบโตในสายงาน
โอกาสในสาขานี้ครอบคลุมทั้งประสบการณ์ทางเทคนิคและประสบการณ์วิชาชีพ ซึ่งมอบคุณค่ามหาศาลให้กับทั้งมือใหม่ ผู้มีประสบการณ์ ระดับกลาง และระดับสูง ด้วยความเชี่ยวชาญทางเทคนิคที่แข็งแกร่ง ความเชี่ยวชาญเฉพาะด้าน และประสบการณ์ระดับพื้นฐาน ผู้สมัครจะได้แสดงให้เห็นถึงทักษะการวิเคราะห์ ทักษะเชิงปฏิบัติ และความสามารถในการทำงานร่วมกับหัวหน้าทีม ผู้จัดการ และผู้บริหารระดับสูง แนวทางการตอบคำถามที่เป็นระบบจะช่วยให้เข้าใจบทเรียนพื้นฐาน ขั้นสูง และการสอบปากเปล่าได้อย่างลึกซึ้ง เพื่อสร้างความมั่นใจว่าบุคคลนั้นๆ จะโดดเด่นเมื่อทำงานในภาคสนาม
บทความนี้ได้รับความคิดเห็นจากผู้จัดการกว่า 45 คน และข้อมูลเชิงลึกจากผู้เชี่ยวชาญกว่า 80 คน สะท้อนถึงรูปแบบการจ้างงานในโลกแห่งความเป็นจริง ครอบคลุมมุมมองที่หลากหลายจากผู้นำทางเทคนิค หัวหน้าทีม และผู้บริหารระดับสูงจากหลากหลายอุตสาหกรรม เพื่อสร้างความน่าเชื่อถือและความไว้วางใจ
คำถามและคำตอบสัมภาษณ์การทดสอบ API ยอดนิยม
1) การทดสอบ API คืออะไร และเหตุใดจึงมีความสำคัญต่อการพัฒนาซอฟต์แวร์สมัยใหม่
การทดสอบ API หมายถึงกระบวนการตรวจสอบว่าอินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชันทำงานได้อย่างถูกต้อง เชื่อถือได้ ปลอดภัย และมีประสิทธิภาพหรือไม่ ซึ่งแตกต่างจากการทดสอบ UI ซึ่งมุ่งเน้นไปที่ส่วนหน้า การทดสอบ API จะตรวจสอบความถูกต้องของการสื่อสารระหว่างระบบซอฟต์แวร์ต่างๆ ในชั้นบริการ ซึ่งช่วยให้มั่นใจได้ถึงการแลกเปลี่ยนข้อมูล ความสมบูรณ์ และประสิทธิภาพของแอปพลิเคชันแบบกระจาย
ตัวอย่าง: ในแพลตฟอร์มอีคอมเมิร์ซ API จะจัดการการตรวจสอบการชำระเงิน การอัปเดตสินค้าคงคลัง และคำสั่งซื้อ tracราชา. ข้อบกพร่องในการตอบสนองของ API อาจทำให้ประสบการณ์การใช้งานของผู้ใช้ทั้งหมดล้มเหลว แม้ว่า UI จะดูเหมือนใช้งานได้ก็ตาม ดังนั้น การทดสอบ API จึงช่วยป้องกันความล้มเหลวในการผสานรวมที่มีค่าใช้จ่ายสูง
👉 ดาวน์โหลด PDF ฟรี: คำถามสัมภาษณ์การทดสอบ API
2) อธิบายประเภทต่างๆ ของ API และกรณีการใช้งานจริง
API สามารถแบ่งออกเป็นหลายประเภท โดยแต่ละประเภทมีวัตถุประสงค์การใช้งานที่แตกต่างกัน
| ประเภทของ API | ลักษณะ | ตัวอย่างการใช้งานกรณี |
|---|---|---|
| API ของเว็บ | เปิดเผยผ่าน HTTP/HTTPS; REST, SOAP, GraphQL | เกตเวย์การชำระเงิน การเข้าสู่ระบบโซเชียลมีเดีย |
| API ภายใน | ใช้ภายในองค์กร ไม่เปิดเผยต่อสาธารณะ | การบูรณาการระบบทรัพยากรบุคคล |
| API สาธารณะ | เปิดให้นักพัฒนาภายนอกพร้อมการรับรองความถูกต้อง | Google แผนที่ API |
| API แบบผสม | รวบรวมจุดสิ้นสุดหลายจุดในคำขอเดียว | แอปธนาคารที่รวมการสอบถามบัญชีและธุรกรรม |
| API ของฮาร์ดแวร์ | เปิดใช้งานการสื่อสารระหว่างฮาร์ดแวร์และซอฟต์แวร์ | API ของกล้องหรือบลูทูธในแอปมือถือ |
สรุป: การเลือกประเภท API ที่ถูกต้องขึ้นอยู่กับข้อกำหนดด้านความปลอดภัย ความสามารถในการปรับขนาด และรูปแบบธุรกิจ
3) API ของ REST, SOAP และ GraphQL แตกต่างกันอย่างไร?
แต่ละกระบวนทัศน์ API มีหลักสถาปัตยกรรมที่ไม่เหมือนกัน
| คุณสมบัติ (Feature) | REST | สบู่ | GraphQL |
|---|---|---|---|
| รูปแบบ | เจสัน, เอ็กซ์เอ็มแอล | XML เท่านั้น | JSON |
| ความยืดหยุ่น | จุดสูง | เข้มงวด | สูงมาก |
| เส้นโค้งการเรียนรู้ | ปานกลาง | สูงชัน | ปานกลาง |
| ประสิทธิภาพ | มีน้ำหนักเบา | หนัก | มีประสิทธิภาพ (หลีกเลี่ยงการดึงข้อมูลมากเกินไป/ไม่เพียงพอ) |
| ความปลอดภัย | SSL, OAuth | WS-ความปลอดภัย | ตามโทเค็น |
ตัวอย่าง: สถาบันการเงินอาจใช้ SOAP เนื่องจากมีความปลอดภัยสูง ในขณะที่แอปพลิเคชันโซเชียลมีเดียอาจชอบ GraphQL สำหรับการค้นหาแบบยืดหยุ่น
4) วิธี HTTP ทั่วไปที่ใช้ในการทดสอบ API มีอะไรบ้าง
วิธี HTTP กำหนดการดำเนินการที่การเรียก API ตั้งใจที่จะดำเนินการ
- รับ: ดึงข้อมูล (เช่น ดึงข้อมูลโปรไฟล์ผู้ใช้)
- โพสต์: สร้างรายการใหม่ (เช่น เพิ่มผลิตภัณฑ์ใหม่)
- วาง: อัพเดตข้อมูลที่มีอยู่อย่างสมบูรณ์
- ปะ: อัปเดตบันทึกบางส่วน
- ลบ: ลบทรัพยากร
ตัวอย่าง: ในระบบการจัดการนักศึกษา GET สามารถดึงข้อมูลนักศึกษาได้ ในขณะที่ PUT สามารถอัปเดตข้อมูลบันทึกทั้งหมดได้
5) การทดสอบ API มีกี่ประเภท และมีประโยชน์อย่างไร?
การทดสอบ API ไม่จำกัดอยู่เพียงการตรวจสอบฟังก์ชันเท่านั้น แต่ยังขยายไปถึงด้านที่ไม่ใช่ฟังก์ชันด้วย
ประเภท ได้แก่ :
- การทดสอบการทำงาน: ตรวจสอบตรรกะให้ตรงตามข้อกำหนด
- โหลดการทดสอบ: ตรวจสอบประสิทธิภาพภายใต้ภาระหนัก
- การทดสอบความปลอดภัย: มั่นใจได้ในการปกป้องจากภัยคุกคาม
- การทดสอบความน่าเชื่อถือ: ยืนยันถึงประสิทธิภาพที่สม่ำเสมอ
- การทดสอบการตรวจสอบ: ตรวจสอบการปฏิบัติตามมาตรฐาน
- การทดสอบการทำงานร่วมกัน: ยืนยันความเข้ากันได้ระหว่างแพลตฟอร์ม
ประโยชน์: แนวทางแบบแบ่งชั้นนี้ไม่เพียงแต่รับประกันความถูกต้องเท่านั้น แต่ยังรับประกันความเสถียรและความยืดหยุ่นภายใต้เงื่อนไขในโลกแห่งความเป็นจริงอีกด้วย
6) การทดสอบ API แตกต่างจากการทดสอบยูนิตอย่างไร
การทดสอบยูนิตจะดำเนินการโดยนักพัฒนาบนโมดูลโค้ดแต่ละโมดูล ในขณะที่การทดสอบ API จะดำเนินการที่ระดับการบูรณาการเพื่อตรวจสอบการสื่อสาร
| ปัจจัย | การทดสอบ API | การทดสอบหน่วย |
|---|---|---|
| กรรมสิทธิ์ | QA/ผู้ทดสอบ | นักพัฒนา |
| ขอบเขต | เวิร์กโฟลว์แบบครบวงจร | โมดูลเดียว |
| เข้าใกล้ | กล่องดำ | กล่องสีขาว |
| การจับเวลา | หลังจากที่สร้างเสร็จแล้ว | ระหว่างการพัฒนา |
ตัวอย่าง: การทดสอบยูนิตอาจยืนยันว่าฟังก์ชัน “calculateTax()” ทำงานได้อย่างถูกต้อง ในขณะที่การทดสอบ API ตรวจสอบว่าบริการชำระเงินทั้งหมด รวมถึงการคำนวณภาษีและการชำระเงินมีการบูรณาการอย่างราบรื่น
7) อธิบายวงจรชีวิตของการร้องขอและการตอบสนอง API
วงจรชีวิต API เริ่มต้นด้วย คำขอของลูกค้า ส่งไปยังจุดสิ้นสุดของเซิร์ฟเวอร์ เซิร์ฟเวอร์ประมวลผลคำขอ โต้ตอบกับชั้นข้อมูล ใช้ตรรกะทางธุรกิจ แล้วส่งคืน คำตอบ ในรูปแบบ JSON หรือ XML การตอบสนองประกอบด้วยรหัสสถานะ ส่วนหัว และเพย์โหลดข้อมูล
ตัวอย่าง: ใน API การเข้าสู่ระบบ ไคลเอ็นต์จะส่งข้อมูลรับรอง เซิร์ฟเวอร์จะตรวจสอบข้อมูลรับรอง สร้างโทเค็น และตอบกลับด้วยรหัสสถานะ 200 และรายละเอียดโทเค็น หากล้มเหลวจะแสดงรหัส 401 หรือ 403
8) บทบาทของคืออะไร Postman ในการทดสอบ API?
Postman เป็นหนึ่งในเครื่องมือพัฒนาและทดสอบ API ที่ได้รับความนิยมอย่างแพร่หลายที่สุด ช่วยให้นักทดสอบสามารถออกแบบ ส่ง และดำเนินการคำขอ API โดยอัตโนมัติ รองรับการเขียนสคริปต์ การกำหนดพารามิเตอร์ การจัดการสภาพแวดล้อม และการสร้างรายงาน
ตัวอย่าง: วิศวกร QA สามารถสร้างคอลเลกชันการทดสอบได้ Postman สำหรับการเข้าสู่ระบบ การสร้างคำสั่งซื้อ และการชำระเงิน จากนั้นรันตามลำดับในขั้นตอน CI/CD
9) เอกสารประกอบ API มีโครงสร้างอย่างไร และเหตุใดจึงมีความสำคัญ?
เอกสารประกอบ API ที่เขียนขึ้นอย่างดีช่วยให้นักพัฒนาสามารถบูรณาการ API ได้อย่างราบรื่น
ปัจจัยสำคัญได้แก่:
- ภาพรวมของวัตถุประสงค์ API
- รายการจุดสิ้นสุดพร้อมตัวอย่างการร้องขอ/การตอบสนอง
- ข้อกำหนดการพิสูจน์ตัวตน
- การจัดการข้อผิดพลาดและรหัสสถานะ
- การจำกัดอัตราและการควบคุมความเร็ว
ตัวอย่าง: เอกสารประกอบ API ของ Stripe ถือเป็นมาตรฐานอุตสาหกรรม เนื่องจากมีตัวอย่างในหลายภาษา ทำให้บูรณาการได้ง่ายขึ้น
10) คุณสามารถอธิบายความแตกต่างระหว่าง API และ Web Service ได้หรือไม่?
แม้ว่าจะใช้แทนกันได้ แต่ API และเว็บเซอร์วิสก็มีความแตกต่างกันโดยพื้นฐาน
| แง่มุม | API | บริการเว็บ |
|---|---|---|
| คำนิยาม | อินเทอร์เฟซที่ช่วยให้สามารถโต้ตอบกับซอฟต์แวร์ได้ | API สามารถเข้าถึงได้ผ่านเครือข่าย |
| โปรโตคอล | ส่วนที่เหลือ, กราฟ QL, RPC | สบู่ พักผ่อน |
| รูปแบบข้อมูล | เจสัน, เอ็กซ์เอ็มแอล | XML เท่านั้น (SOAP) |
| ใช้กรณี | การรวมแอพมือถือ | ระบบ B2B ระดับองค์กร |
11) API endpoint คืออะไร และเหตุใดจึงมีความสำคัญ?
จุดสิ้นสุดคือจุดที่เฉพาะเจาะจง URL ซึ่งเป็นช่องทางที่ API ใช้ในการเข้าถึงทรัพยากร แต่ละเอนด์พอยต์แสดงถึงฟังก์ชัน เช่น /users or /ordersจุดสิ้นสุดกำหนดวิธีการเข้าถึงและจัดการข้อมูล ซึ่งเป็นแกนหลักของการรวมระบบ
ตัวอย่าง: ใน API ของ GitHub GET /repos/{owner}/{repo} ดึงข้อมูลรายละเอียดที่เก็บข้อมูล จุดสิ้นสุดที่กำหนดค่าไม่ถูกต้องอาจทำให้เกิดความล้มเหลวในแอปพลิเคชันที่พึ่งพากัน
12) การตรวจสอบสิทธิ์ทำงานอย่างไรในการทดสอบ API และวิธีการทั่วไปมีอะไรบ้าง
การตรวจสอบสิทธิ์ช่วยให้มั่นใจว่ามีเพียงไคลเอ็นต์ที่ได้รับอนุญาตเท่านั้นที่สามารถเข้าถึง API ได้ วิธีการทั่วไปมีดังนี้:
- คีย์ API: มีการรวมคีย์เฉพาะไว้ในส่วนหัว
- OAuth2.0: การรับรองความถูกต้อง: การมอบสิทธิ์การเข้าถึงที่ปลอดภัย (ใช้โดย Google(เข้าสู่ระบบผ่าน Facebook)
- JWT (โทเค็นเว็บ JSON): โทเค็นไร้สถานะที่เก็บไว้บนฝั่งไคลเอนต์
- การยืนยันตัวตนพื้นฐาน: ชื่อผู้ใช้/รหัสผ่านที่เข้ารหัส
ตัวอย่าง: API ของ Twitter ใช้ OAuth 2.0 เพื่อการบูรณาการกับบุคคลที่สามอย่างปลอดภัย
13) อธิบายบทบาทของส่วนหัวในการร้องขอและการตอบสนอง API
ส่วนหัวมีข้อมูลเมตา เช่น ประเภทเนื้อหา การรับรองความถูกต้อง หรือนโยบายการแคช ตัวอย่างเช่น Content-Type: application/json ระบุรูปแบบโหลดในขณะที่ Authorization: Bearer <token> ให้ข้อมูลประจำตัว การจัดการส่วนหัวที่เหมาะสมช่วยให้การสื่อสาร API สอดคล้องและปลอดภัย
14) API Mocking คืออะไร และควรใช้เมื่อใด
Mocking จำลองการตอบสนองของ API ก่อนที่จะมีแบ็กเอนด์จริง ซึ่งช่วยให้สามารถพัฒนาและทดสอบแบบคู่ขนานได้ เครื่องมือต่างๆ เช่น WireMock และ Mockoon ถูกใช้กันอย่างแพร่หลาย
ตัวอย่าง: หากยังไม่มีการใช้งานเกตเวย์การชำระเงิน API จำลองสามารถส่งคืนการตอบกลับแบบเสมือนได้ ช่วยให้ผู้ทดสอบสามารถดำเนินการตรวจสอบขั้นตอนการชำระเงินได้
15) รหัสสถานะ HTTP ใช้ในการทดสอบ API อย่างไร
รหัสสถานะช่วยให้ทราบข้อมูลเชิงลึกทันทีเกี่ยวกับผลลัพธ์ของการร้องขอ
| Code พิสัย | ความหมาย | ตัวอย่าง |
|---|---|---|
| 2xx | ความสำเร็จ | 200 ตกลง |
| 3xx | การเปลี่ยนเส้นทาง | พบ 302 |
| 4xx | ข้อผิดพลาดของไคลเอนต์ | 404 ไม่พบ |
| 5xx | เซิร์ฟเวอร์ผิดพลาด | ข้อผิดพลาด Server 500 ภายใน |
ตัวอย่าง: ระหว่างการทดสอบเชิงลบ การส่งข้อมูลประจำตัวที่ไม่ถูกต้องควรส่งผลให้ 401 Unauthorized.
16) คุณสามารถอธิบายการตรวจสอบอินพุตใน API และความสำคัญของมันได้หรือไม่
การตรวจสอบอินพุตช่วยให้มั่นใจว่ามีเพียงข้อมูลที่ถูกต้องและผ่านการตรวจสอบความถูกต้องแล้วเท่านั้นที่จะเข้าสู่ระบบ ช่วยป้องกันการโจมตี เช่น การแทรก SQL และรับรองความสมบูรณ์ของข้อมูล
ตัวอย่าง: API การลงทะเบียนผู้ใช้ควรปฏิเสธรูปแบบอีเมลที่ไม่ถูกต้องและทำความสะอาดอักขระพิเศษเพื่อป้องกันการโจมตีแบบฉีด
17) การทดสอบเชิงลบในบริบทของ API คืออะไร
การทดสอบเชิงลบจะตรวจสอบว่า API จัดการคำขอที่ไม่ถูกต้องได้อย่างราบรื่น ตัวอย่างเช่น:
- การส่งคำขอ POST โดยขาดพารามิเตอร์
- การใช้โทเค็นการตรวจสอบสิทธิ์ที่หมดอายุ
- ส่ง JSON ที่มีรูปแบบไม่ถูกต้อง
แนวทางปฏิบัตินี้ช่วยให้มั่นใจถึงความแข็งแกร่งและป้องกันความเสียหายของข้อมูล
18) การกำหนดเวอร์ชันใน API ถูกจัดการอย่างไร และเหตุใดจึงสำคัญ?
การกำหนดเวอร์ชันช่วยให้มั่นใจได้ถึงความเข้ากันได้ย้อนหลังกับ API ที่มีการพัฒนา แนวทางทั่วไปมีดังนี้:
- การกำหนดเวอร์ชัน URI:
/v1/orders,/v2/orders. - การกำหนดเวอร์ชันตามส่วนหัว:
Accept: application/vnd.api.v2+json. - การกำหนดเวอร์ชันพารามิเตอร์แบบสอบถาม
ตัวอย่าง: Facebook บำรุงรักษา API หลายเวอร์ชันเพื่อหลีกเลี่ยงความเสียหายของแอปที่มีอยู่เมื่อมีการเปิดตัวฟีเจอร์ใหม่
19) การทดสอบประสิทธิภาพ API คืออะไร และมีการวัดปัจจัยใดบ้าง
การทดสอบประสิทธิภาพ API จะประเมินความเร็ว ความสามารถในการปรับขนาด และความน่าเชื่อถือ
ปัจจัยที่วัด ได้แก่:
- เวลาตอบสนอง.
- ปริมาณงาน (คำขอ/วินาที)
- เวลาในการตอบสนอง
- อัตราข้อผิดพลาดภายใต้โหลด
ตัวอย่าง: ใน API ของธนาคาร ความล่าช้าเพียง 1 วินาทีอาจส่งผลต่อธุรกรรมได้นับล้านรายการ ทำให้การทดสอบประสิทธิภาพเป็นสิ่งสำคัญ
20) การตรวจสอบ API คืออะไร และมีประโยชน์อย่างไร?
มีการตรวจสอบ API อย่างต่อเนื่อง tracวัดเวลาการทำงาน ความพร้อมใช้งาน และเวลาตอบสนอง ประโยชน์ที่ได้รับ ได้แก่ การตรวจจับการหยุดชะงักได้ตั้งแต่เนิ่นๆ การปรับขนาดเชิงรุก และความไว้วางใจของผู้ใช้ที่ดียิ่งขึ้น เครื่องมือต่างๆ เช่น Grafana, Datadog และ Postman จอภาพเป็นสิ่งที่ใช้กันทั่วไป
21) API Virtualization คืออะไร และช่วยนักทดสอบได้อย่างไร
การจำลองเสมือนจะสร้าง API เวอร์ชันจำลองที่เลียนแบบพฤติกรรมจริง ช่วยลดการพึ่งพาระบบจริง รองรับการทดสอบตั้งแต่เนิ่นๆ และช่วยให้สามารถตรวจสอบประสิทธิภาพได้โดยไม่ต้องเสียค่าใช้จ่ายจริง
ตัวอย่าง: สายการบินใช้ API เสมือนจริงเพื่อทดสอบระบบการจองโดยไม่ต้องเข้าถึงเซิร์ฟเวอร์จริง
22) คุณออกแบบกรณีทดสอบ API ที่มีประสิทธิภาพได้อย่างไร
กรณีทดสอบที่มีโครงสร้างที่ดีได้แก่:
- รหัสการทดสอบและวัตถุประสงค์
- จุดสิ้นสุดและวิธีการ
- ขอข้อมูลโหลดและส่วนหัว
- รหัสตอบกลับและสถานะที่คาดหวัง
- ขั้นตอนการตรวจสอบ
ตัวอย่าง: สำหรับ API "สร้างผู้ใช้" กรณีทดสอบจะต้องตรวจสอบความสำเร็จด้วยข้อมูลที่ถูกต้อง จัดการรายการที่ซ้ำกัน และปฏิเสธรูปแบบที่ไม่ถูกต้อง
23) ข้อบกพร่องทั่วไปที่พบในการทดสอบ API มีอะไรบ้าง
การทดสอบ API มักจะเผยให้เห็น:
- ฟังก์ชันที่ขาดหายไปหรือซ้ำซ้อน
- การจัดการข้อผิดพลาดที่ไม่ดี
- ปัญหาคอขวดด้านประสิทธิภาพ
- ช่องโหว่ด้านความปลอดภัย
- ปัญหามัลติเธรด
ตัวอย่าง: API อาจไม่สามารถส่งคืนข้อความแสดงข้อผิดพลาดที่ถูกต้องได้ ซึ่งทำให้ระบบปลายทางเกิดความสับสน
24) อธิบายการทดสอบความปลอดภัยใน API และเหตุใดจึงมีความสำคัญ
การทดสอบความปลอดภัยช่วยระบุช่องโหว่ต่างๆ เช่น การเข้าถึงโดยไม่ได้รับอนุญาต การโจมตีแบบแทรกซึม หรือการรั่วไหลของข้อมูล เทคนิคต่างๆ ประกอบด้วย การทดสอบเจาะระบบ (Penetration Testing) การตรวจสอบด้วยเทคนิคฟัซซิ่ง (Fuzzing) และการสแกนช่องโหว่
ตัวอย่าง: API ของธนาคารที่ไม่ปลอดภัยซึ่งเปิดเผยรายละเอียดบัญชีอาจนำไปสู่การสูญเสียทางการเงินจำนวนมหาศาล ซึ่งเน้นย้ำถึงความจำเป็นของการตรวจสอบความปลอดภัยที่เข้มงวด
25) ช่องโหว่ทั่วไปใน API คืออะไร และมีการแก้ไขอย่างไร
- การฉีด SQL: ป้องกันด้วยแบบสอบถามแบบมีพารามิเตอร์
- การเขียนสคริปต์ข้ามไซต์ (XSS): ป้องกันได้ด้วยการฆ่าเชื้ออินพุต
- CSRF (การปลอมแปลงคำขอข้ามไซต์): ป้องกันการใช้โทเค็น CSRF และคุกกี้ SameSite
- การตรวจสอบสิทธิ์ที่ล้มเหลว: ได้รับการแก้ไขโดยการจัดการโทเค็นที่เข้มแข็ง
26) API con คืออะไรtracการทดสอบ t และประโยชน์ของการทดสอบ?
กับtracการทดสอบ t ตรวจสอบว่า API เป็นไปตามรูปแบบหรือโครงสร้างที่กำหนดไว้ล่วงหน้าหรือไม่tract. ช่วยให้มั่นใจได้ถึงความสม่ำเสมอและป้องกันการเปลี่ยนแปลงที่ทำให้ระบบหยุดทำงานเมื่อ API พัฒนาขึ้น
ประโยชน์ที่ได้รับ:
- ตรวจจับความไม่ตรงกันได้ในระยะเริ่มต้น
- ช่วยให้การพัฒนาแบบคู่ขนานเป็นไปได้
- รับประกันความเข้ากันได้แบบย้อนหลัง
ตัวอย่าง: กรอบข้อตกลงถูกนำมาใช้อย่างแพร่หลายสำหรับtracการทดสอบ t
27) คุณจัดการการทดสอบการถดถอย API ได้อย่างมีประสิทธิภาพอย่างไร
การทดสอบการถดถอยมุ่งเน้นไปที่การตรวจสอบความถูกต้องของ API ที่สำคัญอีกครั้งหลังจากการเปลี่ยนแปลงโค้ด ควรให้ความสำคัญกับ API ที่มีการใช้งานสูง API ที่มีการปรับเปลี่ยนล่าสุด และจุดสิ้นสุดที่ไวต่อความปลอดภัย การทำงานอัตโนมัติด้วยเครื่องมืออย่าง REST-assured หรือ Postman การเก็บรวบรวมช่วยให้เกิดประสิทธิภาพ
28) การจัดการวงจรชีวิต API คืออะไร และเหตุใดจึงสำคัญ?
วงจรชีวิตของ API ครอบคลุมตั้งแต่การออกแบบ การพัฒนา การทดสอบ การปรับใช้ การตรวจสอบ การกำหนดเวอร์ชัน และการเลิกใช้ การบริหารจัดการวงจรชีวิตที่เหมาะสมจะช่วยให้มั่นใจได้ว่า API ยังคงปลอดภัย ปรับขนาดได้ และสอดคล้องกับความต้องการทางธุรกิจ
ตัวอย่าง: องค์กรต่างๆ ใช้แพลตฟอร์มเช่น Apigee เพื่อจัดการ API ตลอดวงจรชีวิต
29) เครื่องมือใดที่ใช้กันอย่างแพร่หลายสำหรับการทดสอบ API อัตโนมัติ?
เครื่องมือยอดนิยมได้แก่:
- Postman สำหรับการทดสอบการทำงานและอัตโนมัติ
- มั่นใจได้ สำหรับ Javaการทดสอบตามฐาน
- Katalon สตูดิโอ สำหรับการทดสอบแบบไร้โค้ด
- SoapUI สำหรับ SOAP และ REST API
- JMeter สำหรับการทดสอบประสิทธิภาพ
30) คุณมั่นใจได้อย่างไรว่าการจัดการข้อผิดพลาดในการทดสอบ API มีประสิทธิภาพ?
การจัดการข้อผิดพลาดที่มีประสิทธิภาพต้องได้รับการตรวจยืนยัน:
- รหัสสถานะ HTTP ที่ถูกต้อง
- ข้อความแสดงข้อผิดพลาดที่ชัดเจนและมีคำอธิบาย
- ไม่มีการเปิดเผยข้อมูลที่ละเอียดอ่อน
- โครงสร้างข้อผิดพลาดที่สอดคล้องกันในทุกจุดสิ้นสุด
ตัวอย่าง: A 500 Internal Server Error ไม่ควรส่งคืนสแต็ก tracใช่ แต่เป็นข้อความแสดงข้อผิดพลาดที่เป็นมิตรกับผู้ใช้
31) ข้อดีและข้อเสียของการทดสอบ API เมื่อเทียบกับการทดสอบ UI คืออะไร
| ปัจจัย | การทดสอบ API | การทดสอบ UI |
|---|---|---|
| ความเร็ว | ได้เร็วขึ้น | ช้าลง |
| คุ้มครอง | ตรรกะแบ็กเอนด์ | อินเทอร์เฟซภาพ |
| ซ่อมบำรุง | ง่ายดาย | ซับซ้อน |
| ข้อเสียเปรียบ | จำเป็นต้องมีทักษะด้านเทคนิค | จับจุดบกพร่องเฉพาะ UI |
32) คุณจะมั่นใจได้อย่างไรว่า API นั้นมีความสามารถในการปรับขนาดและเชื่อถือได้?
ความสามารถในการปรับขนาดได้รับการรับรองโดยการทดสอบโหลด กลยุทธ์การแคช และการสืบค้นฐานข้อมูลที่มีประสิทธิภาพ ความน่าเชื่อถือมาจากการจัดการข้อผิดพลาด ความซ้ำซ้อน และระบบตรวจสอบที่สม่ำเสมอ
ตัวอย่าง: Netflix ใช้เกตเวย์ API และการแคชเพื่อจัดการการเรียกใช้ API หลายพันล้านครั้งต่อวันอย่างน่าเชื่อถือ
33) ปัจจัยหลักที่ต้องพิจารณาเมื่อเลือกเครื่องมือทดสอบ API คืออะไร
- โปรโตคอลที่รองรับ (REST, SOAP, GraphQL)
- ง่ายต่อการบูรณาการกับ CI/CD
- ความสามารถในการรายงานและการวิเคราะห์
- การสนับสนุนและเอกสารประกอบจากชุมชน
ตัวอย่าง: ทีมงานลงทุนอย่างหนักใน Java โดยทั่วไปมักเลือกใช้ REST-assured ในขณะที่ทีม QA ขององค์กรมักจะเลือกใช้ REST-assured มากกว่า SoapUI เพื่อรองรับ SOAP
34) คุณจัดการกับการอ้างอิงในการทดสอบ API อย่างไร
การจัดการการอ้างอิงจะดำเนินการโดยใช้สตับ ม็อก หรือการจำลองเสมือนเพื่อแยกส่วนประกอบ นอกจากนี้ จะต้องพิจารณาลำดับการดำเนินการและการตั้งค่าข้อมูลด้วย
ตัวอย่าง: การทดสอบ "API การจัดวางคำสั่งซื้อ" อาจต้องมีการจำลองการพึ่งพาเกตเวย์การชำระเงิน
35) API อาจถูกแฮ็กระหว่างการทดสอบได้หรือไม่ และจะลดความเสี่ยงได้อย่างไร
ใช่ API ที่ไม่ปลอดภัยอาจเปิดเผยข้อมูลระหว่างการทดสอบ กลยุทธ์การบรรเทาผลกระทบประกอบด้วยการดำเนินการทดสอบในสภาพแวดล้อมที่แยกตัว การใช้ HTTPS การรักษาความปลอดภัยโทเค็น และการจำกัดการเข้าถึง ต้องปฏิบัติตามแนวปฏิบัติที่ดีที่สุดด้านความปลอดภัยอยู่เสมอ
36) คุณใช้วิธีการวิเคราะห์ค่าขอบเขต (BVA) ในการทดสอบ API อย่างไร
BVA เกี่ยวข้องกับการทดสอบอินพุตที่สภาวะขอบ ตัวอย่างเช่น หากพารามิเตอร์อายุยอมรับค่าตั้งแต่ 18 ถึง 60 ให้ทดสอบด้วยค่า 17, 18, 60 และ 61 วิธีนี้ช่วยให้มั่นใจได้ว่า API จัดการขีดจำกัดได้อย่างถูกต้อง
37) การทดสอบการทำงานร่วมกันในบริบทของ API คืออะไร
การทดสอบการทำงานร่วมกันช่วยให้มั่นใจได้ว่า API ทำงานได้อย่างราบรื่นบนแพลตฟอร์ม อุปกรณ์ หรือระบบของบริษัทอื่น
ตัวอย่าง: API การเดินทางจะต้องบูรณาการกับระบบจองตั๋วเครื่องบินหลายระบบโดยไม่เกิดความล้มเหลว
38) การบันทึกและการตรวจสอบมีการใช้งานใน API อย่างไร
การบันทึกข้อมูลจะบันทึกรายละเอียดคำขอ/การตอบกลับ ขณะที่การตรวจสอบจะวิเคราะห์หาความผิดปกติ การบันทึกข้อมูลจะช่วยในการแก้ไขจุดบกพร่อง ขณะที่การตรวจสอบจะแจ้งเตือนล่วงหน้า เครื่องมืออย่าง ELK Stack, Splunk และ Prometheus เป็นที่นิยมใช้กันทั่วไป
39) ประโยชน์ของการทดสอบ API อัตโนมัติคืออะไร
- การดำเนินการที่รวดเร็วยิ่งขึ้น
- ความครอบคลุมการถดถอยที่สอดคล้องกัน
- การบูรณาการที่ง่ายดายกับ CI/CD pipeline
- รองรับการทดสอบขนาดใหญ่
ข้อเสีย: การตั้งค่าเริ่มต้นต้องมีการลงทุนด้านทักษะและกรอบงาน
40) คุณกำหนดลำดับความสำคัญของกรณีทดสอบ API ในระหว่างการสัมภาษณ์หรือโครงการอย่างไร
การจัดลำดับความสำคัญขึ้นอยู่กับความสำคัญต่อธุรกิจ ความถี่ในการใช้งาน ประวัติข้อบกพร่อง และความอ่อนไหวด้านความปลอดภัย API ที่มีความเสี่ยงสูงจะได้รับการทดสอบก่อนเพื่อลดผลกระทบที่อาจเกิดขึ้น
41) GraphQL API ช่วยปรับปรุงประสิทธิภาพเมื่อเปรียบเทียบกับ REST ได้อย่างไร
GraphQL เป็นภาษาคิวรีที่ช่วยให้ไคลเอ็นต์สามารถร้องขอข้อมูลที่ต้องการได้อย่างแม่นยำ ไม่มากหรือน้อยเกินไป ต่างจาก REST ที่มักต้องใช้จุดสิ้นสุดหลายจุดเพื่อดึงข้อมูลที่เกี่ยวข้อง GraphQL มีจุดสิ้นสุดเพียงจุดเดียวที่ไคลเอ็นต์กำหนดรูปแบบของการตอบสนอง
ข้อดีรวมถึง:
- ขจัดการรับข้อมูลที่ไม่จำเป็นมากเกินไป
- หลีกเลี่ยงการดึงข้อมูลไม่เพียงพอ (ต้องเรียกหลายครั้ง)
- ปรับปรุงประสิทธิภาพการทำงานในสภาพแวดล้อมมือถือและแบนด์วิดท์ต่ำ
ตัวอย่าง: ใน REST การดึงข้อมูลโปรไฟล์ผู้ใช้และโพสต์อาจต้องเรียกใช้ API สองครั้ง ใน GraphQL การสืบค้นเพียงครั้งเดียวสามารถดึงข้อมูลทั้งสองพร้อมกันได้
42) ความท้าทายในการจำกัดและควบคุมอัตรา API คืออะไร
การจำกัดอัตราจะจำกัดจำนวนคำขอที่ไคลเอนต์สามารถส่งได้ภายในกรอบเวลาที่กำหนด ขณะที่การควบคุมปริมาณ (throttling) จะทำให้คำขอเกินขีดจำกัดที่กำหนด แนวทางปฏิบัตินี้จะช่วยป้องกันไม่ให้เซิร์ฟเวอร์ทำงานหนักเกินไปและเกิดการใช้งานในทางที่ผิด
ความท้าทาย ได้แก่ :
- การออกแบบขีดจำกัดที่ยุติธรรมโดยไม่รบกวนผู้ใช้งานที่ถูกต้องตามกฎหมาย
- จัดการปริมาณการรับส่งข้อมูลแบบระเบิดได้อย่างสวยงาม
- การสื่อสารข้อจำกัดผ่านส่วนหัว เช่น
X-Rate-Limit-Remaining. - เพื่อให้แน่ใจว่าบริการที่สำคัญจะไม่ถูกบล็อคโดยไม่ได้ตั้งใจ
ตัวอย่าง: API สาธารณะของ Twitter บังคับใช้อัตราจำกัดที่เข้มงวดเพื่อปกป้องโครงสร้างพื้นฐาน โดยมักต้องให้ผู้พัฒนาปรับแต่งกลยุทธ์การร้องขอ
43) คุณสามารถอธิบายปัจจัยที่มีอิทธิพลต่อการปรับขนาดของ API ได้หรือไม่
ความสามารถในการปรับขนาดของ API คือความสามารถของ API ในการจัดการปริมาณการใช้งานที่เพิ่มขึ้นโดยไม่ทำให้ประสิทธิภาพลดลง ปัจจัยหลายประการมีอิทธิพลต่อความสามารถในการปรับขนาด:
- การออกแบบที่มีประสิทธิภาพ: ใช้การแบ่งหน้า การแคช และการประมวลผลแบบอะซิงโครนัส
- โครงสร้างพื้นฐาน: ปรับใช้ API บนคลัสเตอร์ที่มีการโหลดสมดุล
- การเพิ่มประสิทธิภาพฐานข้อมูล: การสร้างดัชนีและการเพิ่มประสิทธิภาพการค้นหาช่วยลดเวลาในการตอบสนอง
- ภาวะไร้รัฐสัญชาติ: REST API นั้นไม่มีสถานะโดยเนื้อแท้ ซึ่งทำให้ปรับขนาดได้ง่าย
ตัวอย่าง: Netflix จัดการคำขอ API หลายพันล้านรายการต่อวันโดยใช้สถาปัตยกรรมไมโครเซอร์วิสที่มีเกตเวย์ API และการกระจาย CDN ทั่วโลก
44) ความสมบูรณ์ของข้อมูลได้รับการรักษาไว้อย่างไรในระหว่างการทำธุรกรรม API
ความสมบูรณ์ของข้อมูลช่วยให้แน่ใจว่าข้อมูลที่แลกเปลี่ยนกันยังคงถูกต้อง สอดคล้อง และสมบูรณ์
วิธีการรวมถึง:
- กฎการตรวจสอบ: การบังคับใช้ข้อจำกัดที่ระดับ API และฐานข้อมูล
- API การทำธุรกรรม: การใช้ ACID (Atomคุณสมบัติความเป็นน้ำแข็ง ความสม่ำเสมอ การแยกตัว ความทนทาน
- ความสม่ำเสมอ: การทำให้แน่ใจว่าการร้องขอซ้ำๆ จะให้ผลลัพธ์เหมือนเดิม
- ผลรวมตรวจสอบ/แฮช: กำลังตรวจสอบว่า transmitข้อมูลของ ted ไม่ได้ถูกแก้ไขเปลี่ยนแปลง
ตัวอย่าง: API การชำระเงินมักใช้คีย์ idempotency เพื่อป้องกันการเรียกเก็บเงินซ้ำระหว่างการลองใหม่
45) ความแตกต่างระหว่างการเรียก API แบบซิงโครนัสและอะซิงโครนัสคืออะไร
Syncการโทรแบบ hronous ต้องการให้ไคลเอนต์รอให้เซิร์ฟเวอร์ตอบสนองก่อนจึงจะดำเนินการต่อได้ ในขณะที่การโทรแบบอะซิงโครนัสจะช่วยให้ไคลเอนต์ดำเนินการต่อได้โดยไม่ต้องรอ
| แง่มุม | Syncมีเกียรติ | ไม่ตรงกัน |
|---|---|---|
| พฤติกรรม | การปิดกั้น | ไม่ปิดกั้น |
| ใช้กรณี | การยืนยันการชำระเงิน การยืนยันการเข้าสู่ระบบ | การแจ้งเตือน, งานเบื้องหลัง |
| ตัวอย่าง | คำขอ REST API GET | WebSockets, คิวข้อความ |
ตัวอย่าง: การยืนยันการจองโรงแรมจะต้องเป็นแบบซิงโครนัส แต่การส่งอีเมลยืนยันการจองสามารถทำได้แบบอะซิงโครนัส
46) อธิบายบทบาทของเกตเวย์ API ในไมโครเซอร์วิส
เกตเวย์ API ทำหน้าที่เป็นจุดเข้าเดียวสำหรับไมโครเซอร์วิสในการจัดการคำขอ การรับรองความถูกต้อง การกำหนดเส้นทาง และการตรวจสอบ
ฟังก์ชั่นประกอบด้วย:
- โหลดบาลานซ์: กระจายคำร้องขอไปยังบริการต่างๆ
- การบังคับใช้ความปลอดภัย: ตรวจสอบโทเค็นและใช้อัตราจำกัด
- การแปลโปรโตคอล: แปลงระหว่าง REST, gRPC หรือ WebSockets
- การบันทึกแบบรวมศูนย์: ลดความซับซ้อนในการติดตามทั่วทั้งบริการ
ตัวอย่าง: Amazon API Gateway จัดการการรับส่งข้อมูลระหว่างแอปส่วนหน้าและไมโครเซอร์วิส AWS ช่วยลดความซับซ้อนสำหรับนักพัฒนา
47) CI/CD pipelines บูรณาการการทดสอบ API ได้อย่างไร
การทดสอบ API สามารถทำได้โดยอัตโนมัติภายใน CI/CD เพื่อให้มั่นใจว่าการเปลี่ยนแปลงจะไม่ส่งผลกระทบต่อการทำงาน
ขั้นตอนการบูรณาการ:
- การทดสอบหน่วยและ API: ทริกเกอร์โดยอัตโนมัติเมื่อมีการคอมมิตโค้ด
- ชุดการถดถอย: ดำเนินการก่อนการปรับใช้
- การทดสอบประสิทธิภาพ: รวมอยู่ในสภาพแวดล้อมการจัดเตรียม
- รายงาน: สร้างและแบ่งปันผ่านแดชบอร์ด
ตัวอย่าง: Jenkins ท่อส่งมักจะบูรณาการกับ Postman หรือชุดทดสอบ REST-assured เพื่อตรวจสอบ API ก่อนที่จะรวมคำขอการดึง
48) ข้อเสียของเอกสาร API ที่เขียนไม่ดีคืออะไร
เอกสารประกอบที่ไม่ดีทำให้เวลาในการออนบอร์ดเพิ่มขึ้น เกิดข้อผิดพลาดในการบูรณาการ และทำให้ผู้พัฒนาเกิดความหงุดหงิด
ข้อเสีย ได้แก่ :
- คำอธิบายจุดสิ้นสุดที่คลุมเครือจะนำไปสู่การใช้งานในทางที่ผิด
- การขาดคำแนะนำในการยืนยันตัวตนจะทำให้เกิดความเสี่ยงต่อความปลอดภัย
- การขาดตัวอย่างทำให้มีการทดสอบแบบลองผิดลองถูกเพิ่มมากขึ้น
- การอัปเดตที่ไม่สอดคล้องกันทำให้เกิดความไม่สอดคล้องกันระหว่างโค้ดและเอกสาร
ตัวอย่าง: บริษัทให้บริการทางการเงินที่มีเอกสาร API ที่ไม่สมบูรณ์ต้องเผชิญกับการสอบถามจากนักพัฒนาซ้ำแล้วซ้ำเล่า ส่งผลให้การนำระบบไปใช้โดยบุคคลที่สามล่าช้าไปหลายสัปดาห์
49) คุณมั่นใจได้อย่างไรว่า API เป็นไปตาม GDPR และกฎหมายความเป็นส่วนตัวของข้อมูล?
การปฏิบัติตาม GDPR กำหนดให้มี API เพื่อปกป้องข้อมูลส่วนบุคคลตลอดวงจรชีวิตข้อมูล
แนวทางปฏิบัติที่ดีที่สุด ได้แก่:
- การลดขนาดข้อมูล: รวบรวมเฉพาะข้อมูลที่จำเป็นเท่านั้น
- การเข้ารหัสลับ: ใช้ HTTPS/TLS และเข้ารหัสฟิลด์ที่ละเอียดอ่อน
- การจัดการความยินยอม: ตรวจสอบว่าได้บันทึกความยินยอมของผู้ใช้แล้ว
- สิทธิที่จะถูกลืม: จัดเตรียมจุดสิ้นสุดสำหรับการลบข้อมูลผู้ใช้
- นโยบายการบันทึก: ทำให้บันทึกไม่ระบุตัวตนเพื่อหลีกเลี่ยงการจัดเก็บ PII โดยไม่จำเป็น
ตัวอย่าง: API ด้านการดูแลสุขภาพทำให้ข้อมูลผู้ป่วยไม่ระบุตัวตนโดยใช้โทเค็นเพื่อให้สอดคล้องกับ HIPAA และ GDPR พร้อมกัน
50) กลยุทธ์การจัดการวงจรชีวิตใดที่ช่วยป้องกันไม่ให้ API ล้าสมัย?
ความล้าสมัยของ API เกิดขึ้นเมื่อเวอร์ชันเก่าไม่สามารถใช้งานได้หรือไม่ได้รับการรองรับ
กลยุทธ์ประกอบด้วย:
- การกำหนดเวอร์ชัน: รักษาความเข้ากันได้แบบย้อนหลังด้วยไทม์ไลน์การเลิกใช้ที่ชัดเจน
- การติดตามการใช้งาน: ระบุจุดสิ้นสุดยอดนิยมก่อนที่จะลบออก
- ประกาศการเลิกใช้: แจ้งเตือนล่วงหน้าให้กับผู้พัฒนา
- การอัปเดตเอกสาร: ให้แน่ใจว่าเวอร์ชันใหม่มีการบันทึกไว้อย่างดี
- นโยบายการกำกับดูแล: การตรวจสอบ API เป็นประจำเพื่อให้สอดคล้องกับเป้าหมายทางธุรกิจ
ตัวอย่าง: Google Maps API จะทยอยยกเลิกการใช้งานเวอร์ชันเก่า ๆ เพื่อให้นักพัฒนาได้มีเวลาเพียงพอในการย้ายไปใช้เวอร์ชันใหม่
🔍 คำถามสัมภาษณ์การทดสอบ API ชั้นนำพร้อมสถานการณ์จริงและคำตอบเชิงกลยุทธ์
นี่คือคำถาม 10 ข้อที่ออกแบบมาอย่างพิถีพิถัน พร้อมตัวอย่างคำตอบที่ผสมผสานรูปแบบความรู้ พฤติกรรม และสถานการณ์เข้าด้วยกัน คำถามเหล่านี้เหมาะสำหรับการสัมภาษณ์เชิงวิชาชีพที่เน้นการทดสอบ API
1) ความแตกต่างที่สำคัญระหว่างการทดสอบ API และการทดสอบ UI คืออะไร
สิ่งที่คาดหวังจากผู้สมัคร: ผู้สัมภาษณ์ต้องการดูว่าคุณเข้าใจจุดประสงค์หลักของการทดสอบ API หรือไม่ และแตกต่างจากการตรวจสอบส่วนหน้าอย่างไร
ตัวอย่างคำตอบ:
การทดสอบ API มุ่งเน้นไปที่การตรวจสอบตรรกะทางธุรกิจ การตอบสนองของข้อมูล และประสิทธิภาพของบริการแบ็กเอนด์ โดยไม่ต้องพึ่งพาอินเทอร์เฟซผู้ใช้ ในทางกลับกัน การทดสอบ UI จะตรวจสอบวิธีที่ผู้ใช้ปลายทางโต้ตอบกับแอปพลิเคชันด้วยภาพ การทดสอบ API เร็วกว่า เปราะบางน้อยกว่า และสามารถทำได้ตั้งแต่ช่วงต้นของวงจรการพัฒนา ในขณะที่การทดสอบ UI จะขึ้นอยู่กับการพัฒนาส่วนหน้าของแอปพลิเคชันให้เสร็จสมบูรณ์มากกว่า
2) คุณจะมั่นใจได้อย่างไรว่าการทดสอบ API ยังคงเชื่อถือได้เมื่อบริการแบ็กเอนด์มีการเปลี่ยนแปลงบ่อยครั้ง?
สิ่งที่คาดหวังจากผู้สมัคร: ผู้สัมภาษณ์ต้องการประเมินความสามารถในการปรับตัว ทดสอบแนวทางการออกแบบ และการจัดการระบบไดนามิก
ตัวอย่างคำตอบ:
“ในบทบาทก่อนหน้านี้ ฉันดูแลความน่าเชื่อถือของการทดสอบโดยใช้การตรวจสอบความถูกต้องของสคีมา การร้องขอแบบมีพารามิเตอร์ และการกำหนดค่าเฉพาะสภาพแวดล้อม นอกจากนี้ ฉันยังทำงานร่วมกับนักพัฒนาอย่างใกล้ชิดเพื่อปรับกรณีทดสอบให้สอดคล้องกับเอนด์พอยต์ที่เปลี่ยนแปลงไป และดำเนินการตามข้อกำหนดต่างๆ”tracการทดสอบ t เพื่อตรวจสอบพฤติกรรมที่คาดหวังโดยไม่ขึ้นอยู่กับส่วนติดต่อผู้ใช้"
3) คุณสามารถอธิบายความแตกต่างระหว่าง SOAP และ REST API ในแง่ของการทดสอบได้หรือไม่
สิ่งที่คาดหวังจากผู้สมัคร: พวกเขาต้องการทราบว่าคุณสามารถแยกแยะโปรโตคอลและปรับแต่งการทดสอบของคุณให้เหมาะสมได้หรือไม่
ตัวอย่างคำตอบ:
REST API ใช้รูปแบบที่เบาบาง เช่น JSON และอาศัยเมธอด HTTP เช่น GET, POST, PUT และ DELETE การทดสอบ REST API มักจะง่ายและรวดเร็วกว่า SOAP API ใช้ XML และมีมาตรฐานที่เข้มงวดกว่า เช่น คำจำกัดความ WSDL ซึ่งหมายความว่าการทดสอบจำเป็นต้องจัดการคำขอที่มีโครงสร้างและการตรวจสอบความถูกต้องที่มากขึ้น การทดสอบ SOAP ยังต้องการการตั้งค่าที่มากขึ้น ในขณะที่ REST มีความยืดหยุ่นมากกว่าและได้รับการนำไปใช้อย่างแพร่หลาย
4) เล่าให้ฟังหน่อยสิว่าคุณเจอปัญหาสำคัญระหว่างการทดสอบ API ได้ยังไงบ้าง คุณจัดการยังไงบ้าง
สิ่งที่คาดหวังจากผู้สมัคร: สิ่งนี้จะประเมินทักษะการแก้ปัญหาและความสามารถในการสื่อสารของคุณ
ตัวอย่างคำตอบ:
ในงานเก่าของผม ผมพบว่าจุดสิ้นสุดของ API ส่งคืนข้อมูลลูกค้าที่ละเอียดอ่อนโดยไม่มีการตรวจสอบสิทธิ์ที่เหมาะสม ผมจึงบันทึกปัญหาทันทีพร้อมบันทึกคำขอและการตอบสนองโดยละเอียด ส่งต่อปัญหาไปยังทีมรักษาความปลอดภัย และทำงานร่วมกับนักพัฒนาเพื่อทำซ้ำและแก้ไขช่องโหว่ การสื่อสารเชิงรุกนี้ช่วยป้องกันการละเมิดข้อมูลที่อาจเกิดขึ้นได้
5) ลองนึกภาพว่าคุณกำลังทดสอบ API ที่ผสานรวมกับบริการจากภายนอก คุณอาจเผชิญกับความท้าทายอะไรบ้าง และคุณจะรับมือกับมันอย่างไร
สิ่งที่คาดหวังจากผู้สมัคร: พวกเขาต้องการดูว่าคุณคาดการณ์และบรรเทาความเสี่ยงในการบูรณาการอย่างไร
ตัวอย่างคำตอบ:
“การพึ่งพาไลบรารีภายนอกอาจก่อให้เกิดปัญหาต่างๆ เช่น ข้อจำกัดด้านอัตราการใช้งาน การหยุดทำงาน และความไม่เข้ากันของเวอร์ชัน ผมจะแก้ไขปัญหาเหล่านี้โดยใช้ mock หรือ stub ในระหว่างการพัฒนา การใช้งานการลองใหม่และการสำรองข้อมูล และการตรวจสอบการตอบสนองเทียบกับข้อตกลง SLA ที่คาดหวังไว้ นอกจากนี้ ผมจะตรวจสอบให้แน่ใจว่า...tracมีการตรวจสอบความถูกต้องของไฟล์ ts อย่างสม่ำเสมอ เพื่อให้สามารถตรวจพบปัญหาการบูรณาการได้ตั้งแต่เนิ่นๆ”
6) คุณจะตรวจสอบประสิทธิภาพของ API ได้อย่างไร
สิ่งที่คาดหวังจากผู้สมัคร: พวกเขาต้องการทราบเกี่ยวกับเมตริกและเครื่องมือที่คุณใช้
ตัวอย่างคำตอบ:
“ในบทบาทล่าสุดของฉัน ฉันใช้เครื่องมือเช่น JMeter และ Postman เพื่อทำการทดสอบโหลดและทดสอบความเครียดบน API ผมได้ตรวจสอบประสิทธิภาพโดยใช้ตัวชี้วัดต่างๆ เช่น เวลาตอบสนอง ปริมาณงาน เวลาแฝง และอัตราความผิดพลาด นอกจากนี้ ผมยังตั้งค่าพื้นฐานประสิทธิภาพและสร้างเกณฑ์การแจ้งเตือนเพื่อตรวจจับการเสื่อมสภาพในสภาพแวดล้อมการผลิตได้อย่างรวดเร็ว
7) อธิบายสถานการณ์ที่คุณต้องทดสอบ API ภายใต้กำหนดเวลาที่กระชั้นชิดมาก คุณจัดลำดับความสำคัญอย่างไร
สิ่งที่คาดหวังจากผู้สมัคร: พวกเขาต้องการวัดทักษะการจัดการเวลาและการจัดลำดับความสำคัญของคุณ
ตัวอย่างคำตอบ:
ก่อนหน้านี้ เรามีการเปิดตัวผลิตภัณฑ์ที่มีกรอบเวลาการทดสอบที่จำกัด ผมให้ความสำคัญกับการทดสอบโดยมุ่งเน้นไปที่ API ที่สำคัญต่อธุรกิจหลักก่อน เช่น การประมวลผลการชำระเงินและการตรวจสอบสิทธิ์ ผมได้ทำการตรวจสอบการถดถอยแบบอัตโนมัติสำหรับจุดสิ้นสุดที่เสถียร และทดสอบด้วยตนเองสำหรับฟีเจอร์ใหม่ ๆ ความสมดุลนี้ทำให้ผมสามารถครอบคลุมฟังก์ชันการทำงานที่จำเป็นได้ ในขณะที่ยังคงสามารถส่งมอบผลิตภัณฑ์ได้ตามกำหนดเวลาที่วางไว้
8) วิธีการตรวจสอบสิทธิ์ API ทั่วไปมีอะไรบ้าง และคุณจะทดสอบวิธีการเหล่านั้นได้อย่างไร
สิ่งที่คาดหวังจากผู้สมัคร: สิ่งนี้จะทดสอบความตระหนักด้านความปลอดภัยและความรู้การทดสอบเชิงปฏิบัติของคุณ
ตัวอย่างคำตอบ:
วิธีการทั่วไปประกอบด้วยการตรวจสอบสิทธิ์พื้นฐาน, คีย์ API, OAuth 2.0 และโทเค็น JWT ในการทดสอบ ผมตรวจสอบการสร้างและการหมดอายุของโทเค็น ตรวจสอบว่าโทเค็นที่ไม่ถูกต้องหรือหมดอายุถูกปฏิเสธอย่างถูกต้องหรือไม่ และมั่นใจว่าข้อมูลประจำตัวจะไม่ถูกเปิดเผยในบันทึกหรือข้อความแสดงข้อผิดพลาด สำหรับโฟลว์ OAuth ผมจำลองสถานการณ์ผู้ใช้ทั้งที่ถูกต้องและไม่ถูกต้องเพื่อยืนยันการจัดการด้านความปลอดภัย
9) คุณจะร่วมมือกับนักพัฒนาอย่างไรเมื่อมีความเห็นไม่ตรงกันว่าข้อบกพร่องของ API นั้นถูกต้องหรือไม่
สิ่งที่คาดหวังจากผู้สมัคร: พวกเขาต้องการทดสอบทักษะการแก้ไขข้อขัดแย้งและการสื่อสาร
ตัวอย่างคำตอบ:
ผมเชื่อในการสนับสนุนการสนทนาด้วยข้อมูล ผมนำเสนอหลักฐานการทดสอบที่ชัดเจน เช่น ข้อมูลคำขอ รหัสตอบกลับ และบันทึก เพื่อสนับสนุนสิ่งที่ผมค้นพบ หากยังคงมีความเห็นไม่ตรงกัน ผมขอให้เจ้าของผลิตภัณฑ์ชี้แจงพฤติกรรมทางธุรกิจที่คาดหวัง วิธีนี้จะช่วยให้เกิดความสอดคล้องและหลีกเลี่ยงความขัดแย้งที่ยืดเยื้อ
10) หาก API ส่งคืนข้อมูลที่ไม่สอดคล้องกันระหว่างการจัดเตรียมและการผลิต คุณจะตรวจสอบอย่างไร
สิ่งที่คาดหวังจากผู้สมัคร: พวกเขาต้องการเห็นการแก้ปัญหาอย่างมีโครงสร้าง
ตัวอย่างคำตอบ:
“ผมจะเริ่มจากการเปรียบเทียบไฟล์การกำหนดค่าและตัวแปรสภาพแวดล้อมระหว่างสภาพแวดล้อมทดสอบและสภาพแวดล้อมใช้งานจริง จากนั้นผมจะตรวจสอบว่าทั้งสองสภาพแวดล้อมใช้โครงสร้างฐานข้อมูลและเวอร์ชันบริการเดียวกันหรือไม่ หากปัญหายังคงอยู่ ผมจะบันทึกข้อมูลการทำงานจากทั้งสองสภาพแวดล้อม วิเคราะห์ส่วนหัวและเนื้อหาของคำขอ และทำงานร่วมกับทีม DevOps เพื่อแก้ไขปัญหา” tracความแตกต่างของเครือข่ายหรือแคช"
