SoapUI คืออะไร? ข้อมูลเบื้องต้นเกี่ยวกับการทดสอบ SoapUI
SOAP UI คืออะไร
- SOAP UI เป็น API ข้ามแพลตฟอร์มโอเพ่นซอร์สชั้นนำ การทดสอบ เครื่องมือ
- SOAPUI ช่วยให้ผู้ทดสอบดำเนินการทดสอบการทำงาน การถดถอย การปฏิบัติตามข้อกำหนด และโหลดอัตโนมัติบนเว็บ API ที่แตกต่างกัน
- SOAPUI รองรับโปรโตคอลและเทคโนโลยีมาตรฐานทั้งหมดเพื่อทดสอบ API ทุกประเภท
- อินเทอร์เฟซ SOAPUI นั้นเรียบง่ายที่ช่วยให้ผู้ใช้ทั้งด้านเทคนิคและไม่ใช่ด้านเทคนิคสามารถใช้งานได้อย่างราบรื่น
ทำไมต้องใช้ SOAPUI?
SOAPUI ไม่ใช่แค่ฟังก์ชั่นการใช้งานเท่านั้น การทดสอบ API แต่ยังช่วยให้เราทำการทดสอบที่ไม่สามารถใช้งานได้ เช่น การทดสอบประสิทธิภาพและความปลอดภัย
เราจะมาพูดถึงคุณสมบัติที่สำคัญ 5 ประการของ SOAPUI กัน
1) การทดสอบการทำงาน
- เครื่องมืออันทรงพลังช่วยให้ผู้ทดสอบเขียน Functional API Tests ใน SoapUI ได้
- รองรับฟีเจอร์ Drag-Drop ซึ่งช่วยเร่งการพัฒนาสคริปต์
- รองรับการดีบักการทดสอบและอนุญาตให้ผู้ทดสอบพัฒนาการทดสอบที่ขับเคลื่อนด้วยข้อมูล
- รองรับสภาพแวดล้อมที่หลากหลาย – ง่ายต่อการสลับระหว่างสภาพแวดล้อม QA, Dev และ Prod
- อนุญาตการเขียนสคริปต์ขั้นสูง (ผู้ทดสอบสามารถพัฒนาโค้ดที่กำหนดเองได้ขึ้นอยู่กับสถานการณ์)
2) การทดสอบความปลอดภัย
- มีความสามารถในการสแกนช่องโหว่ครบชุด
- ป้องกัน SQL การฉีดเพื่อรักษาความปลอดภัยฐานข้อมูล
- สแกนหา Stack Overflow ที่เกิดจากเอกสารขนาดใหญ่
- สแกนหา Cross Site Scripting ซึ่งมักเกิดขึ้นเมื่อพารามิเตอร์บริการถูกเปิดเผยในข้อความ
- ทำการสแกน Fuzzing และการสแกนขอบเขตเพื่อหลีกเลี่ยงพฤติกรรมที่ไม่แน่นอนของบริการ
3) การทดสอบโหลด
- กระจายการทดสอบโหลดไปยังเอเจนต์ loadUI จำนวนเท่าใดก็ได้
- จำลองการทดสอบปริมาณมากและโหลดในโลกแห่งความเป็นจริงได้อย่างง่ายดาย
- อนุญาตให้การรายงานแบบกำหนดเองขั้นสูงบันทึกพารามิเตอร์ประสิทธิภาพ
- อนุญาตการตรวจสอบประสิทธิภาพของระบบแบบ end-to-end
4) โปรโตคอล/เทคโนโลยีที่รองรับ:
SoapUI มีการสนับสนุนโปรโตคอลที่ครอบคลุมที่สุด
5) การบูรณาการสบู่กับเครื่องมืออัตโนมัติอื่นๆ:
SoapUI ผสานรวมเข้ากับเครื่องมือยอดนิยมได้เป็นอย่างดี
1) มาเวน
อาปาเช่ Maven เป็นเครื่องมือการจัดการโครงการซอฟต์แวร์ที่สามารถจัดการการสร้าง การรายงาน และเอกสารประกอบของโครงการจากพื้นที่เก็บข้อมูลส่วนกลาง Maven ยังสามารถดำเนินการทดสอบ SOAPUI ภายใน Maven Build โดยใช้คำสั่งง่ายๆ
2) ฮัดสัน
ฮัดสัน, เอ Java เครื่องมือบูรณาการอย่างต่อเนื่องและทำงานร่วมกับเครื่องมือต่างๆ เช่น CVS, Subversion, Git, Perforce, Clearcase และ RTC SOAPUI ยังทำงานร่วมกับ HUDSON ซึ่งช่วยให้เราตรวจพบจุดบกพร่องได้อย่างรวดเร็วสำหรับการกระทำแต่ละครั้งของนักพัฒนา
3) JUnit
JUnit คือ การทดสอบหน่วย กรอบงานในตัว Javaซึ่งสามารถควบคุมการไหลของการทดสอบจาก SOAPUI ได้เช่นกัน
4) อาปาเช่ – แอนท์
อาปาเช่ มด, เอ Java ไลบรารีซึ่งเป็นเครื่องมือบรรทัดคำสั่งที่ช่วยในการสร้างซอฟต์แวร์ การใช้บรรทัดคำสั่งของ SOAP UI ทำให้เราสามารถดำเนินการทดสอบภายใน ANT Automated Build ได้
SOAP UI เทียบกับ Selenium
มาเปรียบเทียบ SoapUI กับ Selenium
สบู่ UI | Selenium |
---|---|
SOAP UI ไม่ได้ใช้สำหรับการทดสอบส่วนต่อประสานกับผู้ใช้ ใช้สำหรับการทดสอบ WebAPI หรือ WebService เท่านั้น | Selenium ใช้สำหรับการทดสอบส่วนต่อประสานกับผู้ใช้ |
ความสามารถในการทดสอบข้อมูลที่ส่งและรับระหว่างเว็บเบราว์เซอร์และเว็บเซิร์ฟเวอร์ สามารถทดสอบโปรโตคอล/เทคโนโลยี เช่น REST, SOAP | Selenium ไม่สามารถทดสอบโปรโตคอลได้ แต่สามารถทดสอบพฤติกรรม UI ได้ |
สามารถปฏิบัติงาน โหลด และ การทดสอบความปลอดภัย ของเทคโนโลยีที่กล่าวมาข้างต้น | Selenium สามารถทำได้เท่านั้น การทดสอบสมรรถนะ. การทดสอบประสิทธิภาพ ในระดับหนึ่งเนื่องจากเราสามารถติดตามเวลาดำเนินการโดยคำนึงถึงประสิทธิภาพ แต่ไม่สามารถทดสอบผู้ใช้หลายรายและผู้เช่าหลายรายได้ Selenium ไม่สามารถใช้สำหรับการทดสอบความปลอดภัยได้อย่างแน่นอน |
มันขึ้นอยู่กับโปรโตคอลและไม่ขึ้นอยู่กับเบราว์เซอร์ | Selenium ขึ้นอยู่กับความสามารถของเบราว์เซอร์ |
SOAP UI กับ SOAP UI PRO
เรารู้ว่าการทดสอบ SOAP UI มีสองรสชาติ แบบหนึ่งคือ SOAP UI (เวอร์ชันโอเพ่นซอร์ส) ในขณะที่อีกแบบคือ SOAP UI PRO ให้เราเข้าใจความแตกต่างระหว่างสองรสชาตินี้แล้วเราจะหารือด้วยว่าควรใช้อะไรเมื่อใด
คุณสมบัติ | SOAP UI (เวอร์ชันโอเพ่นซอร์ส) | สบู่ UI PRO |
เทคโนโลยีที่รองรับ | ||
สบู่/WSDL | ||
REST | ||
จส | ||
สารเลว | ||
เจดีบีซี | ||
HTTP | ||
อัตโนมัติ | ||
การทดสอบการใช้งาน | ||
การทดสอบโหลด | ||
บริการจำลอง | ||
การสร้างรหัส | ||
บรรทัดคำสั่ง | ||
Maven | ||
CI และบูรณาการการสร้าง | ||
คุณสมบัติทั่วไป | ||
แอปพลิเคชันแบบสแตนด์อโลน | ||
Groovy เทมเพลตโค้ด | ||
การสนับสนุนหลายสภาพแวดล้อม | ||
ใบอนุญาตลอยตัว | ||
คุณสมบัติการทดสอบการทำงาน | ||
ความคุ้มครอง WSDL | ||
ความคุ้มครองคำขอ/การตอบกลับ | ||
การยืนยันข้อความ | ||
ทดสอบการปรับโครงสร้างใหม่ | ||
การทดสอบหลายรายการ | ||
การทดสอบที่ขับเคลื่อนด้วยแหล่งข้อมูล | ||
ไลบรารีการเขียนสคริปต์ | ||
การรายงานหน่วย | ||
ขั้นตอนการทดสอบด้วยตนเอง | ||
คุณสมบัติการทดสอบความปลอดภัย | ||
สแกนขอบเขต | ||
ประเภทไม่ถูกต้อง | ||
ด้วย SQL Injection | ||
การฉีด XPath | ||
ระเบิด XML | ||
การสแกนแบบคลุมเครือ | ||
การเขียนสคริปต์ข้ามไซต์ | ||
การสแกนที่กำหนดค่าได้ | ||
การรายงาน | ||
คุณสมบัติการทดสอบโหลด | ||
การทดสอบโหลดอย่างรวดเร็วจากการทดสอบการใช้งาน | ||
กลยุทธ์การโหลดที่กำหนดค่าได้ | ||
โหลดการยืนยันการทดสอบ | ||
สถิติตามเวลาจริง | ||
การตรวจสอบประสิทธิภาพ | ||
สถิติการส่งออก | ||
ตั้งค่า/TearDown โดยใช้ Groovy การเขียนสคริปต์ | ||
บูรณาการโหลด UI | ||
การรายงาน | ||
รายงาน | ||
JUnit รายงาน | ||
รายงานการส่งออกข้อมูล | ||
รายงาน WSDL HTML | ||
ความคุ้มครอง WSDL | ||
ความครอบคลุมของ TestSuite | ||
ความครอบคลุมของ TestCase | ||
ความคุ้มครองการยืนยัน | ||
ความคุ้มครองการบันทึกข้อความ |
เมื่อใช้ SoapUI เวอร์ชัน PRO?
- ขับเคลื่อนด้วยข้อมูล: เวอร์ชัน PRO ช่วยให้เราทำงานกับแหล่งข้อมูลภายนอก เช่น ไฟล์ข้อความ, XML, Groovy, Excel, ไฟล์ และฐานข้อมูล สิ่งนี้ช่วยให้เราขยายการทดสอบของเราด้วยอินพุตที่หลากหลายซึ่งขับเคลื่อนผ่านแหล่งข้อมูลที่กล่าวข้างต้น
- ครอบคลุมการทดสอบ: เวอร์ชัน PRO ช่วยให้ผู้ทดสอบได้รับรายงานทางสถิติซึ่งแสดงฟังก์ชันที่ได้รับการทดสอบอย่างดีและส่วนที่ไม่ได้รับการทดสอบอย่างละเอียดเช่นกัน รายงานการเจาะลึกยังระบุได้อย่างชัดเจนว่าสิ่งใดที่ยังไม่ได้รับการทดสอบและสิ่งใดที่ยังไม่ได้รับการยืนยัน
- ทดสอบการดีบัก: จากนั้นคุณสามารถรันการทดสอบจนถึงจุดพักและดูค่าปัจจุบันของคุณสมบัติ SoapUI อินเทอร์เฟซการดีบักการทดสอบช่วยลดความซับซ้อนของขั้นตอนการทดสอบ ตัวแปร คุณสมบัติ คำขอ บริบท และอื่นๆ อีกมากมาย ทำให้การสร้างและการปรับปรุงการทดสอบมีประสิทธิภาพมากขึ้น
- การสนับสนุนหลายสภาพแวดล้อม: การทำงานกับสภาพแวดล้อมที่หลากหลาย เช่น สภาพแวดล้อม DEV, QA, Pre-PROD อาจเป็นงานที่น่ากังวลสำหรับเวอร์ชันโอเพ่นซอร์ส เนื่องจากผู้ทดสอบจำเป็นต้องเปลี่ยนจุดสิ้นสุดเพื่อดำเนินการในสภาพแวดล้อมที่แตกต่างกัน รุ่น PRO ช่วยให้เราสลับระหว่างสภาพแวดล้อมได้อย่างราบรื่น
- รายงาน: เวอร์ชัน PRO เต็มไปด้วยตัวเลือกมากมายในการปรับแต่งรายงานที่สร้างรายงานโดยละเอียดในระดับ Project, TestSuite, TestCase หรือ LoadTest อีกทั้งยังสร้างรายงานในรูปแบบต่างๆ เช่น PDF, HTML, Word หรือ Excel
- การทดสอบความปลอดภัย: SOAPUI ทั้งสองเวอร์ชันมีความสามารถในการทดสอบช่องโหว่ด้านความปลอดภัย เช่น XML Bombs, การแทรก SQL, Fuzzing, การเขียนสคริปต์ข้ามไซต์ อย่างไรก็ตาม มีเพียง SOAP UI PRO เท่านั้นที่สามารถทำการสแกนช่องโหว่โดยใช้การทดสอบความปลอดภัย Generator โดยใช้การคลิกเมาส์
- ตัวสร้าง SQL: การเขียน SQL Query ที่ซับซ้อนอาจเป็นเรื่องยุ่งยากสำหรับผู้ทดสอบที่ไม่ใช่นักเทคนิค โปรแกรม SQL Builder ของ SOAP UI PRO สามารถช่วยพวกเขาในการสร้าง SQL Query โดยใช้อินเทอร์เฟซกราฟิกของ SQL Builder ฟีเจอร์นี้ช่วยให้เราเร่งการใช้งานการทดสอบตามข้อมูลได้
- การสนับสนุนตลอดการใช้งาน: เป็นส่วนหนึ่งของข้อตกลงใบอนุญาต SOAP UI Pro ได้รับการสนับสนุนพิเศษนอกเหนือจากการสนับสนุนฟอรัมออนไลน์
เราจะใช้ SoapUI เวอร์ชันโอเพ่นซอร์สเพื่อวัตถุประสงค์ในการฝึกอบรมของเรา
เครื่องมือ SOAP UI – ไทม์ไลน์ของเวอร์ชัน
เวอร์ชันหลัก | หมายเหตุรีลีส | วันที่ออกข่าว |
---|---|---|
V1.0 | ที่วางจำหน่ายครั้งแรก | 16-10-2005 |
v1.5 | โหลดการทดสอบการเปิดตัว | 06-04-2006 |
v1.6 | การเปิดตัวเครื่องมือ | 12-11-2006 |
V1.7 | รุ่นโปร | 10-04-2007 |
v2.0 | การเปิดเผยความคุ้มครอง | 12-12-2007 |
v2.5 | ส่วนที่เหลือปล่อย | 18-11-2008 |
v3.0 | รายงานการปล่อย | 09-07-2009 |
v3.5 | การเปิดตัวโปรโตคอล | 01-03-2010 |
v3.6 | การเปิดตัว LoadUI | 14-09-2010 |
v4.0 | การเผยแพร่ความปลอดภัย | 14-06-2011 |
v4.5 | ปล่อยหูใหญ่ | 28-03-2012 |
v5.1 | การเสียบปลั๊ก | 05-09-2014 |
v.5.2 | การเปิดตัวคุณสมบัติใหม่ที่สำคัญ | 02-07-2015 |
v.5.3 | การเปิดตัวปลั๊กอินแบบรวม | 05-12-2016 |