ในบทความนี้จะพูดถึง tool ของ postman ส่วนที่เป็น UI และ newman ส่วนที่เป็น command line
POSTMAN คือ
เครื่องมือสำหรับช่วยในการพัฒนา API ทดสอบการทำงานของ Service สามารถดาวน์โหลดได้ ที่นี่
Request,Response
เราจะต้องกรอก URL ที่ใช้ในการทดสอบ และกรอกข้อมูลทั่วไป header, body สามารถเลือกสกุลเป็น json, files หรือ xml และเมื่อกดปุ่ม Send Request จะถูกส่งไป และได้ Response กลับมา
Collection
เราสามารถบันทึกไฟล์ที่เราใช้งานและจัดเก็บหมวดหมู่ได้ตามที่ต้องการ เพื่อง่ายต่อการค้นหา อีกทั้งสามารถ Run Test API แยกตาม Collections ได้อีกด้วย
Environment
ในการทำงานเราไม่สามารถ fix URL ได้ตลอด เพราะบางคนไม่ได้ใช้ port เดียวกันกับเรา ทำให้เราจะต้องคอยเข้าไปแก้ไข url ทุกๆครั้ง สามารถแก้ไขได้โดย การกำหนด environment โดยในแต่ละ environment ให้ทำการเพิ่ม key และ value แยกตาม environment กันไป
เช่น url = http://localhost:3000 ในการอ้างถึง key ใน Environment สามารถทำได้ด้วย {{key name}} เช่น {{url}}
การทดสอบ API
การเขียน Test ที่ได้จาก Postman นั้นจะเป็นแค่ในส่วนของการทดสอบ Integration Test ซึ่งเราสามารถเช็คได้แค่ค่า response เท่านั้น ไม่สามารถเข้าถึง function ต่างๆได้
ส่วนใหญ่ที่จะใช้ทดสอบ API จะทดสอบ json response ทดสอบว่าส่งค่าคืนกลับมามีค่าตามที่เราคาดหวังไหม และถ้าเราแบ่งการทดสอบ API ไว้เป็น Collection เราสามารถใช้ตัว Runner ที่ติดมากับ Postman ได้เลย ซึ่งเมื่อทดสอบเสร็จแล้วจะมีประวัติการทดสอบ และผลการรันรายงานให้เรา
หรือถ้าไม่อยากทดสอบผ่าน Postman สามารถ export collection ออกมาเป็นไฟล์ Test script ได้และยังสามารถ run Postman ผ่าน command line ได้อีกด้วยนะ โดยใช้ Newman
Newman คือเครื่องมือช่วยที่ใช้ในการทดสอบ collection postman ผ่าน command line
ติดตั้ง newman
$npm install -g newman
คำสั่ง run newman
$newman -c <collection file> -e <environment file>
กรณีไม่ได้กำหนด environment ก็ไม่ต้องใส่ -e <environment file>