พาทำ API Testing ใน Postman ฉบับ QA มือใหม่แบบง่ายสุด ๆ !! ไม่มีพื้นฐาน coding ก็ทำได้

Kanthima M
Muze Innovation
Published in
3 min readMar 13, 2024

ก่อนอื่นเราจะมาแนะนำ Tool สำหรับการทำ API Testing กันก่อน นั่นก็คือ Postman ซึ่งเป็นเครื่องมือที่ใช้ในการทดสอบและทำงานกับ API อย่างง่ายและมีประสิทธิภาพ แถมยังสามารถติดตั้งและใช้งานฟรีอีกด้วย

การใช้งาน Postman ในเบื้องต้น มีตามนี้

  1. การติดตั้ง Postman: ค้นหา Postman และดาวน์โหลดและติดตั้งที่เว็บไซต์หรือที่ App Store หรือ Google Play (โปรแกรมนี้รองรับทั้งระบบปฏิบัติการ Windows, macOS, และ Linux)
  2. เปิด Postman: เมื่อติดตั้งเสร็จสิ้น, เปิด Postman บนเครื่อง
  3. สร้าง Environment (เซตติ้ง): คลิกที่ “Environment” และสร้าง environment ใหม่ ซึ่งจะช่วยในการจัดเก็บตัวแปรและค่าที่ใช้ในการเรียก API
  4. สร้าง Request: คลิกที่ “New” เพื่อสร้าง Request ใหม่
  5. กำหนดหัวข้อ (Request Name) และเลือกประเภทของ HTTP Method เช่น GET, POST, PUT, หรือ DELETE
  6. กำหนด URL: ใส่ URL ของ API ที่ต้องการทดสอบในช่อง URL
  7. กำหนด Headers (ถ้ามี): หาก API ต้องการ Headers เพิ่มเติม, ให้ไปที่แท็บ “Headers” และเพิ่ม Headers ที่ต้องการ
  8. กำหนด Body (ถ้ามี): หาก API ต้องการข้อมูลที่ส่งไปในรูปแบบของ Body (เช่น JSON), ให้ไปที่แท็บ “Body” และกำหนดข้อมูลตามที่ API กำหนด
  9. ส่ง Request: กดปุ่ม “Send” เพื่อส่งคำขอไปยัง API หลังจากนั้น Postman จะแสดงผลลัพธ์จาก API ซึ่งรวมถึงข้อมูล Response และสถานะการทำงาน
  10. การตรวจสอบผลลัพธ์: ตรวจสอบผลลัพธ์จาก API ที่แสดงในส่วนของ Response
  11. การจัดการ Collection (เก็บ Request): สร้าง Collection เพื่อจัดการ Request ที่บ่งชี้ไปยัง API ต่าง ๆ

ทีนี้ก็มาเริ่มต้นเขียนสคริปต์กันเลย

ไปที่แท็บ “Tests” ในหน้า Response ของ Postman เพื่อเขียนสคริปต์การทดสอบ

  • API ใน Postman จะถูกเขียนโดยใช้ JavaScript และสามารถเขียนคำสั่งที่ต้องการให้ Postman ทำหลายอย่างได้ เช่น ตรวจสอบข้อมูลที่ได้จากการเรียก API ตรวจสอบสถานะของการทำงาน หรือเปรียบเทียบข้อมูลต่าง ๆ ตาม Expect นั่นเอง มาดูตัวอย่างโค้ดกันเลย

// ตัวอย่างสคริปต์ทดสอบ API ด้วย Postman


// ตรวจสอบว่า response มี status code เป็น 200 OK
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});


// ตรวจสอบว่า response เป็น JSON
pm.test("Response is JSON", function () {
pm.response.to.have.header("Content-Type", "application/json");
});


// ตรวจสอบข้อมูลที่ได้จาก response
pm.test("Response body has a specific property", function () {
const jsonData = pm.response.json();
pm.expect(jsonData).to.have.property("keyName");
pm.expect(jsonData.keyName).to.eql("expectedValue");
});


// ตรวจสอบข้อมูลที่ได้จาก response
pm.test("Additional checks on response", function () {
const jsonData = pm.response.json();

// ตรวจสอบว่ามีข้อมูลอย่างน้อย 1 รายการ
pm.expect(jsonData.items.length).to.be.above(0);


// ตรวจสอบค่าในแต่ละรายการ
jsonData.items.forEach(function (item) {
pm.expect(item).to.have.property("property1");
pm.expect(item.property1).to.not.be.null;
});
});


// สามารถเพิ่มสคริปต์การทดสอบเพิ่มเติมตามต้องการ
  • pm.test() เราจะใช้เพื่อสร้างเคสในการทดสอบ
  • pm.expect() เพื่อตรวจสอบว่าผลลัพธ์จะได้ตามที่เรา Expect ไว้หรือไม่นั่นเอง

ตัวอย่างผลลัพธ์

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

ตัวอย่าง: Test Case ของเราจะทดสอบว่า API เส้น Create ที่มี Method GET หากเราส่ง Parameter ไม่ถูกต้อง ผลลัพธ์ต้องส่งโค้ดมาเป็น 400 Bad Request จากนั้นเราพิมพ์ถาม ChatGPT ได้เลย

Ps. ตรงนี้จะถามเป็นภาษาไทยหรืออังกฤษก็ได้นะเพราะ version ใหม่ เค้ารองรับภาษาไทยด้วย แต่จากการใช้งานมาสักพักภาษาอังกฤษจะได้ผลลัพธ์ที่ตรงจุดมากกว่า

ลองเอาโค้ดไปแปะใน postman จะได้ผลลัพธ์ประมาณนี้เลย

ซึ่งเราสามารถ Copy สคริปต์ที่ ChatGPT แนะนำมาไปลองใช้ได้เลย ง่ายสุดๆ !! ซึ่งการใช้ Tool ดี ๆ แบบนี้มาใช้ จะช่วยให้เราเริ่มต้นทำ API Testing ได้ไวมากขึ้น ไม่ต้องใช้เวลาในการเรียนรู้นาน แต่ทั้งนี้เราก็อยากจะแนะนำว่าให้อ่านคำแนะนำของ ChatGPT และศึกษาวิธีการคิดจากมันไปพร้อมกันด้วยนะ เพื่อที่ว่าเราจะได้เพิ่มทักษะไปในตัว และในอนาคตจะได้พึ่งมันได้น้อยลงนั่นเอง

ซึ่งเมื่อเราเขียนสคริปต์ตาม Test Case และ Expect เรียบร้อยแล้ว เจ้า Postman สามารถบันทึกและแชร์ Request และ Collection เพื่อให้สามารถเรียกใช้งานในอนาคตได้ แถมยังสามารถแชร์ Collection ของเรากับคนในทีมได้ด้วยนะ

แต่หากใครถาม ChatGPT แล้วยังมีข้อสงสัยเพิ่มเติมเกี่ยวกับสคริปต์ที่เจ้า ChatGPT gen มาให้ สามารถไปศึกษาเพิ่มเติมได้ที่นี่เลย !! >> https://learning.postman.com/docs/writing-scripts/test-scripts/#testing-in-postman

จบแล้วกับ ลองเอาไปปรับใช้กันดูนะทุกคน หวังว่าจะชอบกัน หากเราเจอทริคดีๆ แบบนี้อีกไว้จะมาแชร์กันอีกนะ

--

--