มาตรฐานเอกสารแผนทดสอบ API
ฉันมีคำถามสำหรับผู้ทดสอบ API ที่มีประสบการณ์โดยเฉพาะผู้ที่ทำงานในองค์กรขนาดใหญ่ ฉันได้รับมอบหมายให้ระบุมาตรฐานอุตสาหกรรมสำหรับเอกสารแผนการทดสอบ API จนถึงตอนนี้ฉันพบว่าสามารถใช้มาตรฐาน IEEE 829 และ ISO 29119 เพื่อแจ้งการทดสอบซอฟต์แวร์โดยทั่วไปได้
อย่างไรก็ตามมีแนวทางปฏิบัติแนวทางหรือมาตรฐานที่ดีที่สุดสำหรับการจัดทำเอกสารแผนการทดสอบ API โดยเฉพาะที่คุณสามารถแนะนำได้จากประสบการณ์ของคุณหรือไม่
คำตอบ
ส่วนตัวของฉัน:
อยู่ในระดับสูง
ทดสอบจุดสิ้นสุด API รหัสสถานะและข้อมูลด้วยการทดสอบควันความสุขและความเศร้า
ในระดับรายละเอียดต้องถามคำถามต่อไปนี้
คำตอบจะเป็นแนวทางในการทดสอบอะไรและอย่างไร
- มีเอกสารอะไรบ้าง?
- มีฟังก์ชันอะไรบ้าง?
- รองรับการทำงานพร้อมกันหรือไม่?
- ปลายทาง API คืออะไร
- API ภายในหรือภายนอก?
- จุดสิ้นสุดใดเป็นเอกลักษณ์
- ปลายทางเป็นคนไร้สัญชาติหรือไม่ระบุสถานะหรือไม่?
- เวิร์กโฟลว์ใด ๆ * 1 แตกต่างกันไปตามไคลเอนต์หรือไม่?
- มีข้อกำหนดด้านประสิทธิภาพหรือไม่?
- ปลายทาง API ประกอบเป็นเวิร์กโฟลว์หรือไม่
- คาดว่าจะมีการตรวจสอบข้อมูลอะไรบ้าง
- ระบบหรือไลบรารีใดอยู่เบื้องหลัง API
- เราจำเป็นต้องล้อเลียนบริการที่ต้องพึ่งพาหรือไม่?
- มัน จำกัด ปริมาณการใช้งานหรือที่เรียกว่าการ จำกัด อัตราหรือไม่?
- ใช้แนวทางการกำหนดเวอร์ชันอะไร (ถ้ามี)
- API รองรับหลายภาษาหรือไม่
- ถ้าใช้ SOAPui อยู่แล้วจะบูรณาการอย่างไร?
- API ถูก จำกัด เฉพาะประเทศหรือภูมิภาคหรือไม่
- มันมีไคลเอนต์ในภาษาที่เฉพาะเจาะจงหรือไม่?
- รหัสสถานะใดที่คาดหวังสำหรับปลายทางที่ระบุ
- ข้อมูลมีรูปแบบและโครงสร้างโดเมนใดบ้าง
- API ใช้ HATEOS * 2 สำหรับการจัดทำเอกสารด้วยตนเองหรือไม่
- สามารถตรวจสอบ / ทดสอบข้อมูลประเภทใดได้บ้าง?
- API ใดที่รองรับโดยกรอบการทดสอบที่ฉันใช้
- มีการดำเนินการอะไรบ้างเช่น GET, PUT, POST เป็นต้น
- เราจำเป็นต้องเตรียมข้อมูลการทดสอบหรือบริการที่ต้องพึ่งพาหรือไม่?
- ต้องใช้แนวทางใดที่ไม่ใช่ API ในการตรวจสอบข้อมูล
- มีคำจำกัดความ API ที่มีอยู่เช่น WADL, WSDL, Thrift หรือไม่
- ต้องใช้แนวทางใดบ้างที่ไม่ใช่ API ในการเตรียมข้อมูล
- จะใช้กลไกอะไร (ถ้ามี) การอนุญาต ('อะไร')?
- จะใช้กลไกอะไร (ถ้ามี) Authentication ('who')?
- ใครจะใช้มันโปรแกรมเมอร์ภายนอกหรือโมดูลภายในอื่น ๆ
- รูปแบบใด: SOAP, REST, GraphQL, Thrift, ProtoBuffer, อื่น ๆ ?
* 1 เวิร์กโฟลว์มักต้องการการเรียก API หลายครั้งและอาจมีการอ้างอิงระหว่างกัน
* 2 HATEOS - ไฮเปอร์เท็กซ์เป็นสถานะเครื่องยนต์ของแอปพลิเคชันซึ่งช่วยให้ค้นพบ API ได้ด้วยตนเอง