คำถามและคำตอบในการสัมภาษณ์การทดสอบ API 20 อันดับแรก (2024)
ต่อไปนี้เป็นคำถามและคำตอบในการสัมภาษณ์การทดสอบ API สำหรับนักศึกษาใหม่และผู้สมัครที่มีประสบการณ์เพื่อให้ได้งานในฝัน
1) เครื่องมือใดที่ใช้สำหรับการทดสอบ API?
เครื่องมือที่ใช้ในการทดสอบ API ต่างๆ ได้แก่
- โซปยูไอ โปร
- บุรุษไปรษณีย์
- การตรวจสอบ API ของไซต์แจ้งเตือน
ดาวน์โหลดไฟล์ PDF ฟรี: คำถามสัมภาษณ์การทดสอบ API
2) การทดสอบ API คืออะไร
API (Application Programming Interface) ระบุว่าส่วนประกอบซอฟต์แวร์บางส่วนควรโต้ตอบกับส่วนประกอบอื่นๆ อย่างไร กล่าวคือ เป็นชุดของฟังก์ชันและขั้นตอนที่ช่วยให้สามารถสร้างแอปพลิเคชันที่เข้าถึงคุณลักษณะหรือข้อมูลของแอปพลิเคชันหรือ ระบบปฏิบัติการ- การทดสอบฟังก์ชันเหล่านี้เรียกว่าการทดสอบ API
3) การทดสอบทั่วไปใน API มีอะไรบ้าง
การทดสอบทั่วไปที่ดำเนินการกับ API
- การตรวจสอบ API ว่ากำลังอัปเดตอยู่หรือไม่ โครงสร้างข้อมูล
- ตรวจสอบว่า API ไม่ส่งคืนสิ่งใดเลย
- ตามเงื่อนไขอินพุต จะมีการตรวจสอบค่าที่ส่งคืนจาก API
- การยืนยัน API ไม่ว่าจะทริกเกอร์เหตุการณ์อื่นหรือเรียก API อื่น
4) พูดถึงความแตกต่างที่สำคัญระหว่างการทดสอบระดับ UI และการทดสอบ API หรือไม่
UI (ส่วนต่อประสานกับผู้ใช้) หมายถึงการทดสอบส่วนต่อประสานกราฟิก เช่น วิธีที่ผู้ใช้โต้ตอบกับแอปพลิเคชัน การทดสอบองค์ประกอบของแอปพลิเคชัน เช่น แบบอักษร รูปภาพ เค้าโครง ฯลฯ การทดสอบ UI โดยทั่วไปจะเน้นที่รูปลักษณ์ของแอปพลิเคชัน ในขณะที่ API ช่วยให้สามารถสื่อสารระหว่างระบบซอฟต์แวร์สองระบบที่แยกจากกัน ระบบซอฟต์แวร์ที่ใช้ API มีฟังก์ชันหรือรูทีนย่อยที่สามารถดำเนินการโดยระบบซอฟต์แวร์อื่นได้
5) อธิบายว่า SOAP คืออะไร?
SOAP ย่อมาจาก Simple Object Access Protocol และเป็น XML โปรโตคอลที่ใช้สำหรับการแลกเปลี่ยนข้อมูลระหว่างคอมพิวเตอร์
6) อธิบายว่า REST API คืออะไร
เป็นชุดของฟังก์ชันที่นักพัฒนาดำเนินการร้องขอและรับการตอบกลับ ในการโต้ตอบของ REST API นั้นทำผ่านโปรโตคอล HTTP REST - ย่อมาจาก Representational State Transfer ซึ่งกำลังกลายเป็นมาตรฐาน defacto สำหรับการสร้าง API อย่างรวดเร็ว
7) API ที่แตกต่างกันและการทดสอบหน่วย?
การทดสอบ API | การทดสอบหน่วย |
|
|
|
|
|
|
|
|
8) จะทดสอบ API ได้อย่างไร?
หากต้องการทดสอบ API คุณควรทำตามขั้นตอนต่อไปนี้
- เลือกชุดที่คุณต้องการเพิ่มกรณีทดสอบ API
- เลือกโหมดการพัฒนาการทดสอบ
- พัฒนากรณีทดสอบสำหรับวิธี API ที่ต้องการ
- กำหนดค่าพารามิเตอร์การควบคุมแอปพลิเคชัน
- กำหนดค่าเงื่อนไขการทดสอบ
- กำหนดค่าการตรวจสอบวิธีการ
- ดำเนินการทดสอบ API
- ดูรายงานการทดสอบ
- กรองกรณีทดสอบ API
- กรณีทดสอบ Sequence API
9) กล่าวถึงประเด็นหลักที่ต้องพิจารณาในขณะที่เขียนเอกสาร API?
ประเด็นสำคัญที่ต้องพิจารณาเมื่อเขียนเอกสาร API ได้แก่
- แหล่งที่มาของเนื้อหา
- แผนเอกสารหรือภาพร่าง
- รูปแบบการจัดส่ง
- ข้อมูลที่จำเป็นสำหรับแต่ละฟังก์ชันในเอกสาร
- โปรแกรมสร้างเอกสารอัตโนมัติ
10) ในเอกสาร API อธิบายวิธีการจัดทำเอกสารแต่ละฟังก์ชัน ?เครื่องมือที่ใช้ในการจัดทำเอกสารมีอะไรบ้าง?
- รายละเอียด: คำอธิบายเล็กๆ น้อยๆ เกี่ยวกับการทำงานของฟังก์ชัน
- ไวยากรณ์: ไวยากรณ์เกี่ยวกับพารามิเตอร์ของโค้ด ลำดับที่เกิดขึ้น องค์ประกอบที่จำเป็นและเป็นทางเลือก ฯลฯ
- พารามิเตอร์: พารามิเตอร์ฟังก์ชัน
- ข้อความแสดงข้อผิดพลาด: ไวยากรณ์ของข้อความแสดงข้อผิดพลาด
- รหัสตัวอย่าง: ข้อมูลโค้ดเล็กๆ น้อยๆ
- ลิงก์ที่เกี่ยวข้อง: ฟังก์ชันที่เกี่ยวข้อง
เครื่องมือยอดนิยมที่ใช้สำหรับเอกสาร API คือ JavaDoc (สำหรับโค้ด Java ) Doxygen (สำหรับโค้ด .Net)
11) อธิบายกรอบงาน API หรือไม่
กรอบงาน API อธิบายได้ในตัว ค่าสำหรับการทดสอบการทำงานและการเก็บชิ้นส่วนที่กำหนดค่าได้ จะใช้ไฟล์กำหนดค่า กรณีทดสอบอัตโนมัติต้องแสดงในรูปแบบ "ตารางแยกวิเคราะห์" ภายในไฟล์กำหนดค่า เมื่อทดสอบ API ไม่จำเป็นต้องทดสอบแต่ละ API เพื่อให้ไฟล์กำหนดค่ามีบางส่วนที่ API ทั้งหมดเปิดใช้งานสำหรับการรันเฉพาะนั้น
12) API Builder ทำงานอย่างไร
API Builder เป็นโปรแกรม PLSQL ที่ประกอบด้วยสี่โปรแกรม SQL ไฟล์
- สำหรับการตั้งค่าพารามิเตอร์ API และการเริ่มต้นกระบวนการ จะต้องรับผิดชอบไฟล์หนึ่งไฟล์
- มีการสร้างไฟล์สองไฟล์สำหรับตารางชั่วคราวและแพ็คเกจหลักเพื่อสร้างโค้ดที่ส่งออก
- ไฟล์ที่สี่สร้างเอาต์พุต "spooled" ของโค้ดลงในไฟล์ชื่อ "output_script_.sql"
13) อธิบายว่า TestApi คืออะไร
TestApi คือไลบรารีของยูทิลิตี้และ API การทดสอบที่ช่วยให้ผู้ทดสอบและนักพัฒนาสามารถสร้างเครื่องมือทดสอบและการทดสอบอัตโนมัติสำหรับแอปพลิเคชัน .NET และ Win32 โดยมีชุดของบล็อคการสร้างการทดสอบทั่วไป ประเภท โครงสร้างข้อมูล และอัลกอริธึม
14) Inputjection คืออะไร และมีวิธีการทำงานที่แตกต่างกันอย่างไร ?
การฉีดอินพุต: เป็นการจำลองอินพุตของผู้ใช้ คุณสามารถจำลองอินพุตของผู้ใช้ได้หลายวิธี
- การร้องขอวิธีการโดยตรง
- การร้องขอโดยใช้อินเทอร์เฟซการเข้าถึง
- การจำลองโดยใช้อินพุตระดับต่ำ
- การจำลองโดยใช้ไดรเวอร์อุปกรณ์
- การจำลองโดยใช้หุ่นยนต์
15) อะไรคือความท้าทายหลักของการทดสอบ API?
ความท้าทายหลักในการทดสอบ API คือ
- การเลือกพารามิเตอร์
- การรวมพารามิเตอร์
- ลำดับการโทร
16) การทดสอบ API ด้วย runscope คืออะไร
Runscope เป็นเว็บแอปพลิเคชันที่ให้บริการแบ็กเอนด์และอินเทอร์เฟซที่ใช้งานง่ายสำหรับการทดสอบ API
17) อธิบายว่าหลักการของการออกแบบการทดสอบ API คืออะไร?
หลักการในการออกแบบการทดสอบ API คือ
- การติดตั้ง: สร้างออบเจ็กต์ เริ่มบริการ เริ่มต้นข้อมูล ฯลฯ
- การดำเนินการ: ขั้นตอนในการใช้ API หรือสถานการณ์ รวมถึงการบันทึกด้วย
- การตรวจสอบ: Oracles เพื่อประเมินผลการดำเนินการ
- รายงาน: ผ่าน ล้มเหลว หรือถูกบล็อก
- ทำความสะอาด: สถานะการทดสอบล่วงหน้า
18) การทดสอบ API จะพบ Bugs ประเภทใดบ้าง
ประเภทของ Bugs, API จะค้นหา
- ฟังก์ชันการทำงานที่ขาดหายไปหรือซ้ำกัน
- ไม่สามารถจัดการกับเงื่อนไขข้อผิดพลาดได้อย่างสวยงาม
- ความตึงเครียด
- ความเชื่อถือได้
- ความปลอดภัย
- ธงที่ไม่ได้ใช้
- ไม่ได้มีการดำเนินการผิดพลาด
- การจัดการข้อผิดพลาดที่ไม่สอดคล้องกัน
- ประสิทธิภาพ
- ปัญหาเกี่ยวกับมัลติเธรด
- ข้อผิดพลาดที่ไม่เหมาะสม
19) เครื่องมือใดที่ใช้สำหรับการทดสอบอัตโนมัติของ API?
ในขณะที่การทดสอบหน่วยและการทดสอบ API ทั้งซอร์สโค้ดเป้าหมาย หากวิธี API ใช้โค้ดตาม .NET ดังนั้นเครื่องมือที่รองรับควรมีเครื่องมือ .NET Automation สำหรับการทดสอบ API สามารถใช้ได้
- NUnit สำหรับ .NET
- JUnit สำหรับ Java
- เอชพี ยูเอฟที
- สบู่ UI
20) กล่าวถึงขั้นตอนในการทดสอบ API หรือไม่?
ขั้นตอนการทดสอบ API
- เลือกกรณีการทดสอบที่จะต้องดำเนินการ
- สำหรับการเรียก API ให้พัฒนากรณีทดสอบ
- เพื่อให้ตรงตามกรณีทดสอบให้กำหนดค่าพารามิเตอร์ API
- พิจารณาว่าคุณจะตรวจสอบการทดสอบที่ประสบความสำเร็จได้อย่างไร
- การใช้ภาษาการเขียนโปรแกรมเช่น PHP หรือ .NET ดำเนินการเรียก API
- อนุญาตให้การเรียก API ส่งคืนข้อมูลเพื่อตรวจสอบความถูกต้อง
21) โปรโตคอลทั่วไปที่กำลังทดสอบในการทดสอบ API คืออะไร?
- HTTP
- จส
- REST
- สบู่
- อุดร
คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)
Postman Rest Client ยังใช้เพื่อทำให้บริการ API เป็นแบบอัตโนมัติอีกด้วย
Postman นั้นยอดเยี่ยม ไม่เพียงแต่สำหรับการทดสอบด้วยตนเองเท่านั้น แต่ยังสำหรับการสร้างคอลเลกชันที่รวดเร็วมากซึ่งสามารถเรียกใช้โดยใช้ Newman ในไปป์ไลน์ CI/CD ของคุณ และแชร์กับสมาชิกในทีมที่ไม่เชี่ยวชาญด้านเทคโนโลยีได้อย่างง่ายดายเพื่อแสดงให้เห็นความครอบคลุม คุณยังสามารถโหลดโค้ดตัวช่วย (JavaScript) เป็นตัวแปรร่วมและเรียกใช้วิธีการในการทดสอบของคุณโดยใช้สคริปต์คำขอล่วงหน้าและภายหลังคำขอ
หรือคุณอาจต้องการพูดคุยเกี่ยวกับ REST-Assured สำหรับการทดสอบอัตโนมัติด้วย Java อาจคุ้มค่าที่จะชี้ให้เห็นว่าลูกค้าจำนวนมากกำลังใช้ Selenium เพื่อทดสอบ API ผ่าน UI ซึ่งผิดอย่างสิ้นเชิง -
เคลียร์เอกสาร
ไม่มีใครเกาหัวเหนือคำตอบสำหรับคำถาม #21? ฉันเข้าใจทั้ง 5 ข้อด้วยวิธีนี้ (ฉันอาจผิดด้วย):
– HTTP เป็นโปรโตคอลอินเทอร์เน็ต (ส่วนใหญ่รู้จัก – ไม่จำเป็นต้องไปดูรายละเอียดเพิ่มเติม)
– REST ไม่ใช่โปรโตคอล แต่เป็นรูปแบบสถาปัตยกรรมสำหรับสร้าง API ซึ่งใช้โปรโตคอล HTTP/HTTPS เพื่อสื่อสารผ่านอินเทอร์เน็ต
– SOAP เป็นโปรโตคอลอินเทอร์เน็ตที่ใช้ XML อย่างเป็นทางการซึ่งดูแลโดย W3C
– UDDI ไม่ใช่โปรโตคอล แต่เป็นรูปแบบข้อกำหนด API ที่ได้รับการอนุมัติจาก OASIS สำหรับการเผยแพร่ API ผ่านการลงทะเบียน UDDI
– JMS ไม่ใช่โปรโตคอล แต่เป็นระบบส่งข้อความแอปพลิเคชันที่ใช้ XML โดยมี API ของตัวเองสำหรับการส่งและรับข้อความโดยใช้โปรโตคอลต่างๆ ภายใต้ประทุน ส่วนใหญ่เป็น TCP/IP
ได้โปรด - เพื่อช่วยให้ฉันและคนอื่น ๆ เข้าใจสิ่งนี้มากขึ้น - ไม่ว่าจะเกลียดหรือรักคำตอบของฉันเพิ่มเติมในความคิดเห็น ไชโย :)
SOAP ย่อมาจาก Simple Object Access Protocol โปรดแก้ไขสิ่งนี้ในคำถามของคุณหมายเลข 5
มีการปรับปรุง