Cucumber Selenium Tutorial - รู้วิธีทำการทดสอบเว็บไซต์



บทความเกี่ยวกับ Cucumber Selenium Tutorial นี้จะช่วยให้คุณเข้าใจการทำงานของเครื่องมือ Cucumber นอกจากนี้คุณจะได้เรียนรู้วิธีการรวมแตงกวากับซีลีเนียมและเรียกใช้กรณีทดสอบต่างๆ

ไม่ต้องสงสัยเลยว่า เป็นหนึ่งในเครื่องมือที่ยอดเยี่ยมในด้าน แต่อาจดูเหมือนยากเล็กน้อยสำหรับผู้ที่ไม่ใช่ผู้เชี่ยวชาญด้านเทคนิคที่จะเข้าใจการทำงานของมันเนื่องจากความซับซ้อนของโค้ด เพื่อให้งานนี้ง่ายขึ้นแตงกวาจึงเข้ามามีบทบาทซึ่งทำให้โค้ดที่ซับซ้อนง่ายและเข้าใจง่าย แต่มันเป็นอย่างไร? ฉันจะบอกคุณทั้งหมดเกี่ยวกับเรื่องนี้ผ่านบทความเกี่ยวกับ Cucumber Selenium Tutorial

ด้านล่างนี้เป็นหัวข้อในบทความนี้:





ความรู้เบื้องต้นเกี่ยวกับแตงกวา

โลโก้แตงกวา - Cucumber Selenium Tutorial - Edureka

เป็นแนวทาง / เครื่องมือทดสอบที่รองรับ พฤติกรรมขับเคลื่อนการพัฒนา (BDD) เป็นวิธีการเขียนแบบทดสอบที่ทุกคนสามารถเข้าใจได้โดยไม่คำนึงถึงความรู้ทางเทคนิค



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

ทำไมต้องเป็นแตงกวา?

แตงกวาเป็นหนึ่งในเครื่องมือที่ได้รับความนิยมมากที่สุดเนื่องจากเหตุผลดังต่อไปนี้:

  1. แตงกวาคือ โอเพ่นซอร์ส และด้วยเหตุนี้จึงใช้งานได้ฟรี
  2. ในการใช้แตงกวาคุณสามารถเขียนไฟล์ สคริปต์ทดสอบ ในหลายภาษาเช่น , ทับทิม , .NET, ฯลฯ
  3. นอกจากนี้ยังทำงานร่วมกับ , ทับทิมบนราง , Watir และอื่น ๆ การทดสอบบนเว็บ เครื่องมือ
  4. แตงกวาเป็นหนึ่งในแตงกวาที่ใช้กันอย่างแพร่หลาย BDD เครื่องมือ

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



พฤติกรรมขับเคลื่อนการพัฒนา (BDD)

พูดง่ายๆคือ BDD หรือ การพัฒนาที่ขับเคลื่อนด้วยพฤติกรรม เป็นเทคนิคที่ข้อกำหนดหรือกรณีทดสอบของคุณเขียนเป็นภาษาอังกฤษธรรมดาเหมือนประโยค ด้วยวิธีการนี้สมาชิกในทีมที่ไม่ใช่ฝ่ายเทคนิคจะพบว่ามันง่ายที่จะเข้าใจขั้นตอนและทำงานร่วมกันมากขึ้นในกระบวนการพัฒนาซอฟต์แวร์

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

วิธีใช้สตริงย่อยใน sql
คุณลักษณะ: ทดสอบสถานการณ์จำลองควันของ Twitter: ทดสอบการเข้าสู่ระบบด้วยข้อมูลประจำตัวที่ถูกต้องให้เปิด firefox และเริ่มแอปพลิเคชันเมื่อฉันป้อนชื่อผู้ใช้และรหัสผ่านที่ถูกต้องผู้ใช้ควรจะสามารถเข้าสู่ระบบได้สำเร็จ

ในตัวอย่างข้างต้นฉันได้เขียนข้อความเป็นภาษาอังกฤษง่ายๆเพียงไม่กี่คำเพื่อกำหนดสถานการณ์ ฉันจะให้ข้อมูลเชิงลึกเพิ่มเติมเกี่ยวกับสถานการณ์นี้และการนำไปใช้ในส่วนต่อไปของบทความนี้ สำหรับตอนนี้มาดูบทความบทแนะนำเกี่ยวกับ Cucumber Selenium และเรียนรู้พื้นฐานของซีลีเนียม

ความรู้เบื้องต้นเกี่ยวกับซีลีเนียม

เป็นที่ต้องการ เครื่องมือในการทดสอบโดยอัตโนมัติซึ่งดำเนินการบนเว็บเบราว์เซอร์ มีประโยชน์สำหรับการทดสอบเว็บแอปพลิเคชันเท่านั้น แอปพลิเคชันเดสก์ท็อป (ซอฟต์แวร์) หรือแอปพลิเคชันมือถือใด ๆ ไม่สามารถทดสอบโดยใช้ซีลีเนียมได้ มีประโยชน์มากในการเขียนกรณีทดสอบการทำงาน นอกจากนี้ยังให้ประสิทธิภาพที่เชื่อถือได้ด้วย ‘ n ’ จำนวนกรณีทดสอบและเห็นได้ชัดว่าเป็นเครื่องมืออัตโนมัติที่เหมาะสมที่สุดสำหรับเว็บแอปพลิเคชัน

ตอนนี้คุณรู้แล้วว่าซีลีเนียมคืออะไรเรามาดูบทความเกี่ยวกับ Cucumber Selenium Tutorial และทำความเข้าใจว่าเหตุใดจึงใช้ Cucumber กับ Selenium

ทำไมต้องใช้แตงกวากับซีลีเนียม?

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

เครื่องมือแตงกวาขึ้นอยู่กับไฟล์กรอบการพัฒนาพฤติกรรมที่ขับเคลื่อน ทำหน้าที่เป็นสะพาน ระหว่างวิศวกรซอฟต์แวร์และนักวิเคราะห์ธุรกิจและระหว่างผู้ทดสอบและนักพัฒนาด้วยตนเอง

เมื่อใช้ซีลีเนียมร่วมกับแตงกวาสำหรับการทดสอบอัตโนมัติการทดสอบจะถูกเขียนในไฟล์คุณลักษณะที่ผู้มีส่วนได้ส่วนเสียต่างๆสามารถเข้าใจได้ในสภาพแวดล้อมที่คล่องตัวเช่นนักวิเคราะห์ธุรกิจ แตงกวายังมาพร้อมกับความสามารถในการรองรับสคริปต์และภาษาการเขียนโปรแกรมหลายภาษาและ JUnit ใช้เพื่อเรียกใช้สคริปต์เหล่านี้และสร้างผลลัพธ์

เมื่อเข้าใจสิ่งนี้แล้วเรามาดูขั้นตอนต่างๆในการสร้างแอปพลิเคชัน Cucumber และเรียกใช้กรณีทดสอบ

ขั้นตอนในการสร้าง Cucumber Application

ขั้นตอนต่างๆที่เกี่ยวข้องในการสร้างแอปพลิเคชัน Cucumber มีดังนี้:

  1. ดาวน์โหลดไฟล์ Jar ของ Cucumber และ Selenium และกำหนดค่าเส้นทางการสร้าง
  2. เพิ่ม Cucumber Plugin จาก Eclipse Marketplace
  3. สร้างไฟล์ฟีเจอร์และเพิ่มสถานการณ์
  4. ดำเนินการตามขั้นตอนสำหรับสถานการณ์
  5. เขียนคลาสรองชนะเลิศและรันโค้ด

ตอนนี้เรามาทำความเข้าใจแต่ละขั้นตอนโดยละเอียดกัน

ขั้นตอนที่ 1: ดาวน์โหลดไฟล์ Cucumber and Selenium Jar

รายการเหตุการณ์ javascript พร้อมตัวอย่าง

แตงกวา ไม่ได้โต้ตอบกับเบราว์เซอร์และ ดำเนินการ การกระทำบนเว็บไซต์ที่อยู่ระหว่างการทดสอบ การโต้ตอบกับเว็บไซต์ คือ การกระทำที่ คือ แสดงโดย . ด้วยเหตุนี้ คุณจะต้องการ ดาวน์โหลด แตงกวา เช่นเดียวกับ Selenium Webdriver ไฟล์ jar . หากคุณต้องการทราบวิธีการติดตั้งซีลีเนียมในระบบของคุณคุณสามารถตรวจสอบบทความนี้ได้ที่ ด้านล่างนี้คือรายชื่อไฟล์ jar สำหรับ Cucumber

  • แตงกวา - แกน
  • แตงกวา-html
  • ความครอบคลุมของรหัสความคุ้มครอง
  • แตงกวา - จาวา
  • แตงกวา - จูนิท
  • แตงกวา -jvm-deps
  • การรายงานแตงกวา
  • แฮมเครสต์คอร์
  • Gherkin
  • Junit

เมื่อคุณดาวน์โหลดไฟล์ jar เหล่านี้จากไฟล์ พื้นที่เก็บข้อมูล Maven คุณสามารถกำหนดค่าเส้นทางการสร้างของโครงการของคุณและเพิ่มไฟล์ .jar ไฟล์และไลบรารีดังแสดงในภาพรวมด้านล่าง

ขั้นตอนที่ 2: ขั้นตอนต่อไปคือการติดตั้ง Cucumber บน Eclipse ของคุณ สำหรับสิ่งนั้นคุณต้องไปที่ วิธีใช้ -> Eclipse Marketplace -> ค้นหา Cucumber และติดตั้ง แตงกวาและธรรมชาติ ในคราสของคุณ ด้านล่างสแนปชอตแสดงให้เห็นถึงสิ่งเดียวกัน

ขั้นตอนที่ 3: เมื่อคุณกำหนดค่า Cucumber แล้วขั้นตอนต่อไปคือการสร้างไฟล์คุณลักษณะ ขั้นแรกคุณต้องสร้างโฟลเดอร์ซอร์สใหม่จากนั้นเพิ่มไฟล์คุณสมบัติดังที่แสดงด้านล่าง

ถัดไปคุณต้องระบุชื่อของไฟล์คุณสมบัติดังที่แสดงด้านล่าง

เมื่อคุณสร้างไฟล์ฟีเจอร์คุณสามารถเขียนสถานการณ์ดังที่แสดงในโค้ดด้านล่าง

สถานการณ์ทดสอบ I:

คุณลักษณะ: รีเซ็ตฟังก์ชันการทำงานในหน้าเข้าสู่ระบบของ Application Scenario: การตรวจสอบปุ่มรีเซ็ตที่กำหนดให้เปิด Firefox และเปิดแอปพลิเคชันเมื่อป้อนชื่อผู้ใช้และรหัสผ่านจากนั้นรีเซ็ตข้อมูลรับรอง

ขั้นตอนที่ 4: หลังจากนั้นคุณต้องใช้สถานการณ์จำลองด้วยความช่วยเหลือของคำจำกัดความขั้นตอน ในโค้ดด้านล่างนี้ฉันได้ใช้วิธีการสำหรับสถานการณ์ที่ฉันเขียนไว้ในไฟล์คุณสมบัติ

package stepDefinitions นำเข้า cucumber.api.java.en ให้นำเข้า cucumber.api.java.en จากนั้นนำเข้า cucumber.api.java.en เมื่อคลาสสาธารณะขั้นตอน {@Given ('^ เปิด Firefox และเปิดแอปพลิเคชัน $' ) โมฆะสาธารณะ open_the_Firefox_and_launch_the_application () โยน Throwable {System.out.println ('ขั้นตอนนี้เปิด Firefox และเปิดแอปพลิเคชัน')} @When ('^ ป้อนชื่อผู้ใช้และรหัสผ่าน $') โมฆะสาธารณะ enter_the_Username_and_Password () โยนโยนได้ { System.out.println ('ขั้นตอนนี้ป้อนชื่อผู้ใช้และรหัสผ่านในหน้าล็อกอิน')} @ จากนั้น ('^ รีเซ็ตข้อมูลรับรอง $') โมฆะสาธารณะ Reset_the_credential () โยน Throwable {System.out.println ('ขั้นตอนนี้ คลิกที่ปุ่มรีเซ็ต ')}}

ขั้นตอนที่ 5: ตอนนี้ขั้นตอนสุดท้ายคือการสร้าง ' คลาสนักวิ่ง ’ และดำเนินการโปรแกรม โดยทั่วไปโครงสร้างโครงการของคุณควรมีลักษณะดังที่แสดงในภาพรวมด้านล่าง

ในภาพรวมด้านบน ' Runner.java ’ เป็นไฟล์ปฏิบัติการ ตอนนี้เรามาเขียนโค้ดไฟล์นี้และทำความเข้าใจวิธีการทำงาน

package Runner import org.junit.runner.RunWith import cucumber.api.CucumberOptions import cucumber.api.junit.Cucumber @RunWith (Cucumber.class) @CucumberOptions (features = 'features', glue = {'stepD'}) คลาสสาธารณะ นักวิ่ง {}

ในโค้ดด้านบนฉันมี '@CucumberOptions ’และระบุชื่อแพ็กเกจของทั้งไฟล์ฟีเจอร์และไฟล์ Runner เพื่อที่จะใช้วิธีการและรันโค้ด เมื่อคุณรันโปรแกรมจะแสดงวิธีการจากข้อกำหนดขั้นตอน ของคุณ เอาท์พุท ควรมีลักษณะดังที่แสดงด้านล่าง:

ขั้นตอนนี้เปิด Firefox และเปิดแอปพลิเคชัน ขั้นตอนนี้ป้อนชื่อผู้ใช้และรหัสผ่านในหน้าเข้าสู่ระบบ ขั้นตอนนี้คลิกที่ปุ่มรีเซ็ต 1 สถานการณ์ (ผ่าน 32m1) 3 ขั้นตอน (ผ่าน 32m3) 0m0.185s

ดังนั้นนี่คือวิธีที่คุณต้องเขียนไฟล์ทั้งหมดและรันโปรแกรม

สถานการณ์ทดสอบ II:

ตอนนี้เรามาทำความเข้าใจอีกหนึ่งสถานการณ์ที่ฉันรวมซีลีเนียมเข้ากับแตงกวาพิจารณาสถานการณ์ที่คุณต้องการทดสอบเว็บไซต์ Twitter หนึ่งในสถานการณ์ทดสอบจะตรวจสอบข้อมูลรับรองการเข้าสู่ระบบ ด้วย BDD คุณสามารถเขียนสถานการณ์ทดสอบนี้ในรูปแบบนี้:

คุณลักษณะ: ทดสอบสถานการณ์จำลองควันของ Twitter: ทดสอบการเข้าสู่ระบบด้วยข้อมูลประจำตัวที่ถูกต้องให้เปิด firefox และเริ่มแอปพลิเคชันเมื่อฉันป้อนชื่อผู้ใช้และรหัสผ่านที่ถูกต้องผู้ใช้ควรจะสามารถเข้าสู่ระบบได้สำเร็จ

ต่อไปเราจะเขียนคลาสนิยามขั้นตอนเพื่อนำไปใช้กับสถานการณ์ทั้งหมด

package stepD import java.util.concurrent.TimeUnit import org.openqa.selenium By import org.openqa.selenium.WebDriver import org.openqa.selenium.firefox.FirefoxDriver import cucumber.api.java.en ให้นำเข้า cucumber.api .java.en จากนั้นนำเข้า cucumber.api.java.en เมื่อคลาสสาธารณะ SmokeTest {WebDriver driver @Given ('^ เปิด firefox และเริ่มแอปพลิเคชัน $') โมฆะสาธารณะ open_the_firefox_and_start_application () โยน Throwable {System.setProperty ('webdriver .gecko.driver ',' C: geckodriver-v0.23.0-win64geckodriver.exe ') ไดรเวอร์ = FirefoxDriver ใหม่ () driver.manage (). timeouts (). implicitlyWait (10, TimeUnit.SECONDS) driver.get (' https : //twitter.com/login ')} @ เมื่อ (' ^ ฉันป้อนชื่อผู้ใช้และรหัสผ่านที่ถูกต้อง $ ') โมฆะสาธารณะ I_enter_valid_username_and_valid_password () โยน Throwable {driver.findElement (By.xpath (' // input [@ placeholder = 'โทรศัพท์อีเมลหรือชื่อผู้ใช้'] ')). sendKeys (' your_username ') driver.findElement (By.xpath (' // div [@ class = 'clearfix field'] // input [@ placeholder = 'Password'] ')). sendKeys (' ยอ ur_password ')} @ จากนั้น (' ^ ผู้ใช้ควรจะเข้าสู่ระบบได้สำเร็จ $ ') โมฆะสาธารณะ user_should_be_able_to_login_successfully () โยน Throwable {driver.findElement (By.xpath (' // button [@ class = 'ส่ง EdgeButton EdgeButton - หลัก EdgeButtom - medium ']')) คลิก ()}}

ในโปรแกรมข้างต้นฉันได้ใช้ เพื่อเปิดเบราว์เซอร์ firefox และใช้driver.get ()มันจะนำทางไปยังหน้าล็อกอินของ Twitter นอกจากนี้จะค้นหากล่องข้อความชื่อผู้ใช้และรหัสผ่านโดยใช้ และป้อนข้อมูลรับรองที่ถูกต้อง ในที่สุดก็จะเข้าสู่ระบบสำเร็จและเรียกใช้กรณีทดสอบ คุณต้องรันรันเนอร์เป็นการทดสอบ JUnit เพื่อให้ทราบว่าการทดสอบผ่านหรือล้มเหลว

ด้านล่างภาพรวมแสดงผลลัพธ์ของโปรแกรม

นี่คือวิธีที่คุณต้องเขียนไฟล์ทั้งหมดและเรียกใช้งานโปรแกรม นั่นคือทั้งหมดที่เกี่ยวกับ Cucumber Selenium Tutorial ฉันหวังว่าคุณจะเข้าใจแนวคิดและช่วยในการเพิ่มมูลค่าให้กับความรู้ของคุณ ตอนนี้หากคุณต้องการรับข้อมูลเชิงลึกเพิ่มเติมเกี่ยวกับซีลีเนียมคุณสามารถดูได้ที่ .

หากคุณพบ 'Cucumber Selenium Tutorial ” เกี่ยวข้อง ตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก

การจัดเรียงอาร์เรย์ c ++

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบทความ Cucumber Selenium Tutorial แล้วเราจะติดต่อกลับไป