การใช้ SoapUI ด้วย Selenium สำหรับการทดสอบบริการเว็บ

SoapUI เป็นฟังก์ชันโอเพ่นซอร์สที่ได้รับความนิยมมากที่สุด การทดสอบ เครื่องมือสำหรับ การทดสอบ API- ก็จัดให้อย่างครบครัน ความคุ้มครองการทดสอบ และรองรับโปรโตคอลและเทคโนโลยีมาตรฐานทั้งหมด

SOAP คืออะไร?

สบู่ เป็นโปรโตคอลที่ใช้ XML อย่างง่าย อนุญาตให้แอปพลิเคชันแลกเปลี่ยนข้อมูลผ่าน HTTP มันใช้ บริการเว็บ ภาษาคำอธิบาย (WSDL) ภาษาสำหรับการสื่อสาร แอปพลิเคชันอื่นยังสามารถโต้ตอบกับบริการเว็บโดยใช้อินเทอร์เฟซ WSDL

สบู่คืออะไร?

โซปุ้ย เป็นเครื่องมือทดสอบบริการเว็บข้ามแพลตฟอร์มแบบโอเพ่นซอร์ส SOAPUI-Pro มีฟังก์ชันพิเศษสำหรับบริษัทที่เกี่ยวข้องกับบริการเว็บที่สำคัญ บริการเว็บมีบทบาทสำคัญในแอปพลิเคชันอินเทอร์เน็ต

Selenium

  • Selenium: – เป็นเครื่องมือทดสอบเพื่อทำให้เบราว์เซอร์อัตโนมัติในหลายแพลตฟอร์ม
  • Selenium ไดรเวอร์เว็บ: – ทำการโทรโดยตรงไปยังเบราว์เซอร์ ใช้การสนับสนุนดั้งเดิมของเบราว์เซอร์สำหรับการทำงานอัตโนมัติ

Selenium ด้วย SoapUI

วิธีที่ง่ายและสะดวกที่สุดในการบูรณาการ Selenium ด้วย Soapui คือการใช้ Groovy. SoapUI รองรับอย่างกว้างขวาง Groovy.

Groovy เป็นภาษาสคริปต์แบบมุ่งเน้นวัตถุ Groovy รวมทั้งหมด Java ห้องสมุด ดังนั้นทั้งหมด Java สามารถใช้คีย์เวิร์ดและฟังก์ชันที่เกี่ยวข้องในสคริปต์ Groovy ได้โดยตรง มันทำงานร่วมกับ JVM (Java เครื่องเสมือน)

ข้อกำหนดเบื้องต้นสำหรับการใช้งาน Selenium ด้วย SoapUI

เรียกนักวิ่ง SoapUI Testcase เข้ามา Selenium.

โค้ดด้านล่างจะถูกใช้เพื่อเรียก SoapUI testcase มันจะตั้งค่าคุณสมบัติของเมืองและรหัสไปรษณีย์ที่เกี่ยวข้อง เมื่อดำเนินการโค้ดแล้วจะได้รับค่าเมืองและรหัสไปรษณีย์ นอกจากนี้ ให้แสดงจำนวนความล้มเหลวที่ไม่ตรงกับเมืองและรหัสไปรษณีย์ที่เกี่ยวข้อง รหัสนี้จะทำงานใน Selenium.

หมายเหตุ: “usePropertyFileFlag=true” ที่นี่แทนที่จะใช้ไฟล์คุณสมบัติคงที่เพื่อจัดเก็บรหัสไปรษณีย์และเมือง ข้อมูลของรหัสไปรษณีย์และเมืองจะถูกส่งผ่านขณะรันไทม์แบบไดนามิกโดยเมธอด setProjectProperties()

คำแนะนำในการรันโค้ด

  • เริ่มต้น SoapUI
  • เริ่มกรณีทดสอบใหม่
  • เพิ่มก้าวใหม่อันเร้าใจ
  • คัดลอกวางโค้ดตัวอย่างลงในขั้นตอน
  • คลิกที่เล่น
  • ท่านสามารถเข้าดู Firefox การเริ่มต้นและการนำทางไปยัง Google หลังจากนั้น คุณจะเห็นรายการบันทึกของ SoapUI
  • โค้ดรันโดยใช้ Junit

ตัวอย่างรหัส

@when("<I use the weather service to get the weather information")						
    public void i_use_the_weather_service_to_get_the_information() {
        Set<Entry<String, string>> set = zipAndCities.entrySet();
        while (iterator,hasNext)) {
            Entry<String, String> entry = iterator.next();
            String zipCode = entry.getkey();
            String city = entry.getValue();
            String[] prop = {"usePropertyFileFlag=true","zipCode=" +zipCode, "city=" +city};									
            
            try{
                SoapUITestCaseRunner soapUITestCaseRunner = new	SoapUITestCaseRunner();
                soapUITestCaseRunner.setProjectFile("src/test/resources/WeatherSoapTest-soapui-project.xml");					
                soapUITestCaseRunner.setProjectProperties(prop);
                soapUITestCaseRunner.setTestSuite("TestSuite1");
                soapUITestCaseRunner.setTestCase("TestCase1");
                soapUITestCaseRunner.run();
                
            } catch (Exception e) {
                System.err.println("checking" + zipCode + " failed!");
                failureCount++;
                zipCodes.append(zipCode + " [" + city +"] ");
                e.printStackTrace();
            }finally{					
                totalCount++;
            }
}
}
}

มุมมองคอนโซลช่วยให้เราสามารถดูกรณีทดสอบทั้งหมดที่ดำเนินการได้อย่างรวดเร็ว คุณจะพบรายชื่อรหัสไปรษณีย์ เมืองที่ดึงข้อมูลและส่งผ่านไปยัง SoapUI กรณีทดสอบ 1.

ดูไฟล์บันทึก SoapUI

ไฟล์บันทึกจะบันทึกทุกการกระทำที่เกิดขึ้นในระบบปฏิบัติการหรือแอปพลิเคชันซอฟต์แวร์ หากต้องการดูไฟล์บันทึก SoapUI ให้ไปที่ไดเร็กทอรีหลักแล้วคุณจะเห็นชื่อไฟล์ “soapui.log”

ดูไฟล์บันทึก SoapUI

ใน SoapUI ไฟล์บันทึกจะอยู่ในโฟลเดอร์ bin ในไดเร็กทอรีการติดตั้ง เช่น C:\Program files\SmartBear\soapUI-Pro-4.0.1\bin

ดูไฟล์บันทึก SoapUI

เมื่อคุณเปิดไฟล์บันทึกนี้โดยคลิกที่ไฟล์ มันจะมีลักษณะคล้ายกับภาพหน้าจอด้านล่าง

ดูไฟล์บันทึก SoapUI

สรุป

  • Soap เป็นโปรโตคอลที่ใช้ XML อย่างง่าย อนุญาตให้มีการแลกเปลี่ยนข้อมูลผ่าน HTTP
  • SoapUI เป็นเครื่องมือทดสอบบริการเว็บข้ามแพลตฟอร์มแบบโอเพ่นซอร์ส
  • Selenium เป็นชุดเครื่องมือทดสอบเพื่อทำให้เบราว์เซอร์ในหลายแพลตฟอร์มเป็นแบบอัตโนมัติ
  • Selenium Webdriver ทำการโทรโดยตรงไปยังเบราว์เซอร์ ใช้การสนับสนุนดั้งเดิมของเบราว์เซอร์สำหรับระบบอัตโนมัติ
  • Selenium บูรณาการกับ SoapUI โดยใช้ Groovy.