วิธีสร้างชุดทดสอบและกรณีทดสอบใน SoapUI
ทำความเข้าใจกับโปรโตคอล SOAP
ก่อนที่เราจะสร้างกรณีทดสอบ SOAPUI ให้เราเข้าใจพื้นฐานเกี่ยวกับ SOAP Protocol ก่อน สิ่งนี้จะช่วยให้คุณใช้ SOAP UI เพื่อทดสอบคำขอ SOAP และการตอบสนองได้อย่างมีประสิทธิภาพ
สบู่ ย่อมาจาก โปรโตคอลการเข้าถึงวัตถุอย่างง่าย- ด้านล่างนี้เป็นคุณสมบัติของ SOAP Protocol
- เป็นโปรโตคอลที่ใช้ XML สำหรับการสื่อสารระหว่างสองระบบที่แตกต่างกัน
- มันเป็นแพลตฟอร์มและภาษาที่เป็นอิสระ จึงมีการพัฒนาระบบโดยใช้ Java สามารถสื่อสารกับระบบที่พัฒนาใน.NET
- คำขอ/การตอบกลับ SOAP ถูกส่งผ่าน HTTP
เรียนรู้รูปแบบข้อความสบู่
ข้อความ SOAP คือเอกสาร XML ทั่วไปที่มีองค์ประกอบดังต่อไปนี้ ข้อความอาจเป็นข้อความร้องขอหรือข้อความตอบกลับก็ได้
หลังจากตั้งค่าพื้นที่ทำงานที่เราดำเนินการในบทช่วยสอนครั้งล่าสุด เราจะต้องสร้างโครงสร้างโปรเจ็กต์ SoapUI ชุดทดสอบ กรณีทดสอบ เพื่อทดสอบบริการเว็บที่กำหนด ให้เราเข้าใจตัวอย่างโครงการ SoapUI เพื่อสร้างโครงการ SOAP ใหม่
การสร้างโครงการสบู่
ขั้นตอน 1) ตอนนี้ เราจำเป็นต้องนำเข้าโปรโตคอล SOAP/REST ทั้งนี้ขึ้นอยู่กับโปรเจ็กต์ เราจะสร้างโครงการ SOAP ใหม่
ขั้นตอน 2) เราจะใช้คำขอ SOAP ดังต่อไปนี้ http://www.dneonline.com/calculator.asmx?wsdl
- ป้อนชื่อโครงการ
- ป้อนเส้นทางของคำขอ WSDL ในกรณีนี้ http://www.dneonline.com/calculator.asmx?wsdl
- คลิกตกลง
หมายเหตุ
- สร้างคำขอตัวอย่างสำหรับการดำเนินการทั้งหมด? จะสร้างคำขอตัวอย่างสำหรับการดำเนินการทั้งหมดที่พร้อมใช้งานใน WSDL ที่กำหนด เมื่อคุณป้อนที่อยู่ WSDL ตัวเลือกนี้จะถูกตรวจสอบโดยอัตโนมัติ คุณสามารถยกเลิกการเลือกได้
- สร้างชุดทดสอบสำหรับ WSDL ที่นำเข้า: สร้างชุดทดสอบ SoapUI ภายในโปรเจ็กต์สำหรับ WSDL ที่นำเข้า
- เส้นทางสัมพัทธ์: ช่วยให้ผู้ใช้สามารถบันทึกไฟล์ทั้งหมดที่เกี่ยวข้องกับไฟล์โครงการ
ขั้นตอน 3) เมื่อสร้างโครงการ SOAP โดยใช้ WSDL ที่กล่าวข้างต้น เราจะเห็นได้ว่ามีการดำเนินการสองประการที่จะนำเข้ามาในโครงการ
ขั้นตอน 4) ขยายคำขอแรกและคลิกขวาที่ 'เพิ่ม' จากนั้นคลิกที่ 'คำขอใหม่'
จากนั้นคลิกที่ 'ตกลง' มันจะแสดงคำขอ SOAP ในรูปแบบ XML
- ป้อน 'intA' และ 'intB'
- คลิกที่ปุ่มส่ง
- การตอบสนอง XML จะปรากฏในบานหน้าต่างด้านขวา
คุณอาจสงสัยว่าทำไมต้องสร้าง Test Cases? เมื่อคุณสามารถทดสอบ Webservice ได้โดยตรงที่นี่...
คุณสามารถส่งคำขอสำหรับการดำเนินการหนึ่งรายการได้ แล้วรายการอื่นๆ ล่ะ คุณสามารถรวมอินพุตสำหรับการบวกได้กี่รายการโดยใช้การดำเนินการนี้ คุณต้องแก้ไขคำขอสำหรับการรวมแต่ละรายการ
ตัวอย่าง: หากคุณต้องการเพิ่มจาก 4 และ 4 แทนที่จะเป็น 5 และ 5... คุณต้องแก้ไขการดำเนินการอีกครั้ง ดังนั้น จึงต้องสร้างชุดทดสอบ/กรณีทดสอบเพื่อให้ทดสอบสถานการณ์ที่เป็นไปได้ทั้งหมดโดยไม่ต้องแก้ไขการดำเนินการโดยตรง
วิธีสร้างชุดทดสอบใน SoapUI
ด้านล่างนี้เป็นขั้นตอนในการสร้างชุดทดสอบใน SoapUI:
ขั้นตอนที่ 1) คลิกขวาที่รูทของโปรเจ็กต์
ภายในโปรเจ็กต์ ผู้ทดสอบสามารถสร้างชุดทดสอบได้โดยคลิกขวาที่รากของโปรเจ็กต์
ขั้นตอนที่ 2) ป้อนรายละเอียดชุดการทดสอบ
เราจำเป็นต้องป้อนชื่อของชุดทดสอบแล้วกดตกลง
ขั้นตอนที่ 3) ตรวจสอบชุดทดสอบที่สร้างขึ้น
ชุดการทดสอบที่สร้างขึ้นจะแสดงในแผงนำทางดังที่แสดงด้านล่าง
ขั้นตอนที่ 4) เปิดชุดทดสอบ
หน้าต่างชุดทดสอบจะเปิดขึ้นในบานหน้าต่างด้านขวา เนื่องจากเราเพิ่งสร้างขึ้น จึงไม่มีกรณีทดสอบ SoapUI ดังนั้นตัวเลือกทั้งหมดจึงถูกปิดใช้งาน
วิธีสร้างกรณีทดสอบใน SoapUI
นี่คือกระบวนการทีละขั้นตอนสำหรับการสร้างกรณีทดสอบใน SoapUI:
ขั้นตอน 1) ภายในชุดทดสอบ เราสามารถสร้างการทดสอบได้หลายรายการโดยคลิกขวาที่ 'ชุดทดสอบ' และเลือก 'TestCase ใหม่'
ขั้นตอน 2) ระบุชื่อของ กรณีทดสอบ และคลิก 'ตกลง'
ขั้นตอน 3) กรณีทดสอบที่สร้างขึ้นมีขั้นตอนเป็นศูนย์ดังที่แสดงด้านล่าง
หมายเหตุ:เราจะเห็นว่ามีการเพิ่มกรณีทดสอบโดยไม่มีขั้นตอนการทดสอบใดๆ สำหรับการทดสอบทุกประเภทที่มีอยู่ เมื่อเพิ่มขั้นตอนการทดสอบแล้ว ตัวเลขในวงเล็บจะเปลี่ยนแปลงโดยอัตโนมัติ
ขั้นตอนการทดสอบการทำงานควรอยู่ใน 'ขั้นตอนการทดสอบ' ในขณะที่ขั้นตอนการทดสอบประสิทธิภาพควรอยู่ใน 'การทดสอบโหลด' และขั้นตอนการทดสอบความปลอดภัยควรอยู่ใน 'การทดสอบความปลอดภัย'
ขั้นตอน 4) เราสามารถแทรกขั้นตอนการทดสอบต่างๆ ได้โดยคลิกขวาที่ขั้นตอนการทดสอบ และเลือกขั้นตอนการทดสอบที่เหมาะสมดังที่แสดงด้านล่าง ดังนั้น หากคุณจะทดสอบ REST Webservice คุณจะต้องเลือกคำขอทดสอบ REST
การเพิ่มขั้นตอนการทดสอบใน SoapUI
ตอนนี้ให้เราเพิ่มขั้นตอนการทดสอบเพื่อตรวจสอบคำขอทดสอบ SOAP ที่นำเข้า:
ขั้นตอน 1) เพิ่มขั้นตอนใหม่ 'SOAP Request' ดังที่แสดงด้านล่าง
ขั้นตอน 2) ป้อนชื่อขั้นตอนแล้วคลิกตกลง
ขั้นตอน 3) เมื่อคลิก "ตกลง" จะมีกล่องโต้ตอบปรากฏขึ้นเพื่อเลือกการดำเนินการที่จะเรียกใช้ การดำเนินการทั้งหมดจะปรากฏในรายการ และผู้ใช้สามารถเลือกการดำเนินการที่ต้องการเรียกใช้ได้
- มีการดำเนินการหลายอย่างที่จะแสดงรายการ Operaจะเหมือนกันยกเว้นเวอร์ชัน SOAP ที่ใช้CalculatorSoap – ใช้ SOAP เวอร์ชัน 1.1 ในขณะที่ CalculatorSoap12 – ใช้ SOAP เวอร์ชัน 1.2
- เวอร์ชันไม่สำคัญสำหรับเราในบริบทนี้ ดังนั้นคุณสามารถเลือกสิ่งที่คุณต้องการได้
- เมื่อเลือกการดำเนินการแล้ว คลิก 'ตกลง'
ขั้นตอน 4) ในขณะที่เพิ่มกรณีทดสอบ เราสามารถเพิ่มการยืนยันมาตรฐานได้ การยืนยันเรียกอีกอย่างว่าจุดตรวจสอบ/จุดตรวจสอบ ซึ่งเราจะพูดถึงรายละเอียดในบทช่วยสอนถัดไป
เราสามารถเพิ่มจุดตรวจสอบ/การยืนยันต่อไปนี้ขณะสร้างกรณีทดสอบได้ ให้เราสร้างกรณีทดสอบโดยมีตัวเลือกซึ่งหมายถึงการสร้างขั้นตอนการทดสอบโดยไม่ต้องมีจุดตรวจสอบใดๆ ด้านล่าง
- ตรวจสอบว่าข้อความตอบกลับเป็น SOAP หรือไม่เมื่อดำเนินการทดสอบ
- ตรวจสอบว่าสคีมาการตอบสนองถูกต้องหรือไม่
- ตรวจสอบว่าการตอบสนอง SOAP มี FAULT หรือไม่
ขั้นตอน 5) เมื่อสร้างกรณีทดสอบแล้ว คำขอ XML จะแสดงอยู่ด้านล่าง โครงสร้างของ XML อธิบายไว้ในภาพรวมด้านล่าง
ขั้นตอน 6) ขณะนี้การนับขั้นตอนการทดสอบเพิ่มขึ้นเป็นหนึ่งเนื่องจากเราเพิ่งเพิ่มขั้นตอนการทดสอบหนึ่งขั้นตอน ในทำนองเดียวกัน เมื่อเพิ่มขั้นตอนการทดสอบโหลดและความปลอดภัย จำนวนที่เกี่ยวข้องจะเพิ่มขึ้นโดยอัตโนมัติตามจำนวนขั้นตอนที่เพิ่ม
การส่งคำขอด้วยตนเองและการอ่านการตอบกลับใน SoapUI
ขั้นตอน 1) เราต้องการบวกเลขจำนวนเต็มสองตัว
- อินเอ – 5
- อินทีบี – 5
ถัดไป
- เราจำเป็นต้องป้อนข้อมูลเหล่านี้แทนเครื่องหมายคำถามซึ่งจะถูกส่งเป็นคำขอ XML
- หลังจากป้อนค่าเหล่านั้นลงในแท็ก XML ที่เกี่ยวข้องแล้ว ให้คลิกปุ่ม 'ส่งคำขอ' เพื่อตรวจสอบการตอบสนอง
ขั้นตอน 2) เมื่อส่งคำขอ เว็บเซิร์ฟเวอร์จะประมวลผลคำขอบริการเว็บและส่งการตอบกลับดังที่แสดงด้านล่าง
จากการอ่านคำตอบ เราก็สามารถสรุปได้ว่า 5 บวก 5 เป็น 10
ทำความเข้าใจกับการตอบสนองของสบู่และแผงบันทึก
ตามที่อธิบายไว้ในตอนต้นของบทช่วยสอนการทดสอบ SoapUI นี้ ข้อความ SOAP จะถูกส่งผ่านโปรโตคอล HTTP ให้เราดูที่ข้อความ RAW สิ่งนี้จะช่วยให้เราเรียนรู้ว่าคำขอ SOAP และการตอบกลับถูกส่งผ่าน HTTP อย่างไร
ขั้นตอน 1) คลิกแท็บ 'RAW' ในหน้าต่างคำขอ SOAP-UI ทั้งสอง
- คำขอถูกโพสต์ไปยังเว็บเซิร์ฟเวอร์ ดังนั้นจึงใช้วิธี POST ของ Http
- คำขอ SOAP ถูกส่งไปในเนื้อความของข้อความ Http
ขั้นตอน 2) คลิกแท็บ 'RAW' ในหน้าต่างตอบกลับ SOAP-UI เพื่อทำความเข้าใจวิธีการส่งการตอบสนองผ่าน HTTP
- หลังจากประมวลผลคำขอแล้ว รหัสตอบกลับ Http (200) จะปรากฏขึ้น ซึ่งหมายความว่าดำเนินการสำเร็จ เว็บเซิร์ฟเวอร์ประมวลผลสำเร็จแล้ว
- การตอบสนอง SOAP จะถูกส่งกลับไปยังไคลเอนต์โดยเป็นส่วนหนึ่งของเนื้อความของข้อความ HTTP
สแนปชอตด่วนของรหัสตอบกลับ Http เพื่อให้เข้าใจและแก้ไขจุดบกพร่องได้ง่าย ตารางด้านล่างจะช่วยคุณแก้ไขปัญหาตามโค้ด HTTP ที่ได้รับจากเว็บเซิร์ฟเวอร์
รหัสเอชทีพี | Descriptไอออน |
---|---|
1xx: | ข้อมูล – นี่หมายถึงคำขอที่ได้รับและดำเนินการต่อไป |
2xx: | ความสำเร็จ - การดำเนินการได้รับ เข้าใจ และยอมรับเรียบร้อยแล้ว |
3xx: | การเปลี่ยนเส้นทาง – ซึ่งหมายความว่าจะต้องดำเนินการเพิ่มเติมเพื่อดำเนินการตามคำขอให้เสร็จสิ้น |
4xx: | ข้อผิดพลาดของลูกค้า – ซึ่งหมายความว่าคำขอมีรูปแบบที่ไม่ถูกต้องหรือไม่สามารถดำเนินการได้ |
5xx: | เซิร์ฟเวอร์ผิดพลาด - เซิร์ฟเวอร์ล้มเหลวในการตอบสนองคำขอที่ถูกต้อง |
ขั้นตอน 3) ให้เรามาทำความเข้าใจข้อมูลอื่น ๆ ที่แสดงอยู่ในหน้าต่างกรณีทดสอบ
- แสดงถึง NO ส่วนหัวในคำขอที่ถูกส่ง
- แสดงถึง NO สิ่งที่แนบมาในคำขอที่ถูกส่งไปยังเว็บเซิร์ฟเวอร์
- แสดงถึงข้อมูลส่วนหัว 10 รายการและจะแสดงเมื่อคลิกที่ข้อมูลนั้น
- แสดงว่าไม่มีไฟล์แนบจากข้อความตอบกลับ
แผงบันทึก:
บานหน้าต่างบันทึกมีข้อมูลที่ครบถ้วนเกี่ยวกับธุรกรรมระหว่างไคลเอนต์และเซิร์ฟเวอร์ ผู้ใช้จะสามารถเห็นแท็บของบานหน้าต่างบันทึกดังที่แสดงด้านล่าง เราจะหารือเกี่ยวกับบานหน้าต่างบันทึกที่ใช้บ่อยที่สุดเมื่อทำงานกับ SOAP-UI
บันทึก SoapUI – แสดงข้อมูลการตอบสนองจากเว็บเซิร์ฟเวอร์ ข้อมูลเดียวกันนี้ถูกจัดเก็บไว้ในไฟล์ soapui.log ของโฟลเดอร์ที่ติดตั้ง SOAP-UI ภายใต้ไดเร็กทอรี 'bin'
บันทึก HTTP – แสดงการถ่ายโอนแพ็กเก็ต HTTP ทั้งหมด ข้อมูลทั้งหมดใน 'RAW' จะแสดงอยู่ในบันทึก HTTP
บันทึกข้อผิดพลาด - บันทึกข้อผิดพลาดจะแสดงข้อผิดพลาดทั้งหมดที่เราพบในระหว่างเซสชันโครงการทั้งหมด ข้อมูลเดียวกันนี้มีอยู่ใน 'soapui-errors.log' ที่อยู่ในไดเรกทอรี 'bin' ของตำแหน่งที่ติดตั้ง SOAP UI
บันทึกหน่วยความจำ – แท็บนี้จะตรวจสอบการใช้หน่วยความจำและแสดงในรูปแบบแผนภูมิดังที่แสดงด้านล่าง แท็บนี้มีประโยชน์มากเมื่อต้องใช้งานหน่วยความจำจำนวนมาก
ตอนนี้เราได้สร้างชุดการทดสอบ กรณีทดสอบ ขั้นตอนการทดสอบ และได้รับการตอบสนองแล้ว ขั้นตอนต่อไปคือการตรวจสอบการตอบสนอง เราจะจัดการกับประเภทของการยืนยันในบทช่วยสอนถัดไป