มาตรฐานเอกสารแผนทดสอบ API

Sep 17 2020

ฉันมีคำถามสำหรับผู้ทดสอบ API ที่มีประสบการณ์โดยเฉพาะผู้ที่ทำงานในองค์กรขนาดใหญ่ ฉันได้รับมอบหมายให้ระบุมาตรฐานอุตสาหกรรมสำหรับเอกสารแผนการทดสอบ API จนถึงตอนนี้ฉันพบว่าสามารถใช้มาตรฐาน IEEE 829 และ ISO 29119 เพื่อแจ้งการทดสอบซอฟต์แวร์โดยทั่วไปได้

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

คำตอบ

2 MichaelDurrant Sep 17 2020 at 22:14

ส่วนตัวของฉัน:

อยู่ในระดับสูง

ทดสอบจุดสิ้นสุด 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 ได้ด้วยตนเอง