Hướng dẫn về Cucumber Selenium - Biết Cách Thực hiện Kiểm tra Trang web



Bài viết này về Cucumber Selenium Tutorial sẽ giúp bạn hiểu về hoạt động của công cụ Cucumber. Hơn nữa, bạn cũng sẽ học cách tích hợp Cucumber với Selenium và chạy các trường hợp thử nghiệm khác nhau.

Không nghi ngờ gì là một trong những công cụ tuyệt vời trong lĩnh vực , nhưng có vẻ hơi khó đối với một người không phải là kỹ thuật để hiểu hoạt động của nó do độ phức tạp của mã. Để giảm bớt nhiệm vụ này, Cucumber xuất hiện, điều này làm cho đoạn mã phức tạp trở nên đơn giản và dễ hiểu. Nhưng, chính xác thì nó làm như thế nào? Tôi sẽ cho bạn biết tất cả về nó thông qua bài viết này trên Cucumber Selenium Tutorial.

Dưới đây là các chủ đề trong bài viết này:





Giới thiệu về dưa chuột

Logo dưa chuột - Cucumber Selenium Tutorial - Edureka

là một phương pháp / công cụ kiểm tra hỗ trợ Phát triển theo hướng hành vi (BDD). Nó cung cấp một cách để viết các bài kiểm tra mà bất kỳ ai cũng có thể hiểu được, bất kể mức độ kiến ​​thức kỹ thuật của họ.



Nó giải thích hành vi của ứng dụng trong một văn bản tiếng Anh đơn giản bằng cách sử dụng Gherkin ngôn ngữ. Tôi hy vọng rằng bạn đã hiểu rõ về Cucumber là gì. Bây giờ, hãy tiến xa hơn và hiểu một số sự kiện cho thấy sự cần thiết của Cucumber trong khung thử nghiệm.

Tại sao dưa chuột?

Vâng, Dưa chuột là một trong những công cụ phổ biến nhất vì những lý do được liệt kê dưới đây:

  1. Dưa chuột là mã nguồn mở và do đó, nó được sử dụng miễn phí.
  2. Khi sử dụng Cucumber, bạn có thể viết tập lệnh thử nghiệm bằng nhiều ngôn ngữ như , Ruby , .MẠNG LƯỚI, , Vân vân.
  3. Nó cũng tích hợp với , Viên ngọc trên tay vịn , Watir và khác thử nghiệm dựa trên web công cụ.
  4. Dưa chuột là một trong những loại được sử dụng rộng rãi nhất BDD công cụ.

Đây là một số tính năng độc đáo giúp Cucumber hữu ích cho việc kiểm tra trang web. Bây giờ bạn đã biết Cucumber là gì và tại sao bạn cần nó, hãy cùng tìm hiểu một trong những tính năng độc đáo của Cucumber giúp người không chuyên về công nghệ dễ dàng hiểu các trường hợp thử nghiệm.



Phát triển theo hướng hành vi (BDD)

Nói một cách đơn giản, BDD hoặc Phát triển hành vi lái xe là một kỹ thuật mà thông số kỹ thuật hoặc trường hợp kiểm tra của bạn được viết bằng tiếng Anh đơn giản như câu. Với cách tiếp cận này, các thành viên không chuyên về kỹ thuật sẽ dễ dàng hiểu được quy trình và cộng tác nhiều hơn trong quá trình phát triển phần mềm.

Hãy hiểu điều này với sự trợ giúp của một ví dụ đơn giản. Hãy xem xét một tình huống mà bạn muốn kiểm tra trang web Twitter. Một trong những tình huống thử nghiệm là xác minh thông tin đăng nhập. Với BDD, bạn có thể viết kịch bản thử nghiệm này ở định dạng sau:

sự khác biệt giữa javascript và jquery
Tính năng: Kiểm tra tình huống khói Twitter Tình huống: Kiểm tra đăng nhập bằng thông tin xác thực hợp lệ Được đưa ra Mở firefox và khởi động ứng dụng Khi tôi nhập tên người dùng hợp lệ và mật khẩu hợp lệ Sau đó người dùng sẽ có thể đăng nhập thành công

Trong ví dụ trên, tôi vừa viết một vài câu lệnh đơn giản bằng tiếng Anh để xác định các tình huống. Tôi sẽ cung cấp thêm thông tin chi tiết về kịch bản này và việc triển khai nó trong phần sau của bài viết này. Cho bây giờ, hãy tiến xa hơn trong bài viết Hướng dẫn về Cucumber Selenium và tìm hiểu các nguyên tắc cơ bản về Selenium.

Giới thiệu về Selenium

là ưu tiên khi nói đến việc tự động hóa các bài kiểm tra được thực hiện trên các trình duyệt web. Nó chỉ hữu ích cho việc thử nghiệm các ứng dụng web. Không thể kiểm tra bất kỳ ứng dụng (phần mềm) máy tính để bàn hoặc ứng dụng di động nào bằng Selenium. Nó rất hữu ích trong việc viết các trường hợp kiểm thử chức năng. Nó cũng cung cấp hiệu suất đáng tin cậy với ‘ n ’ số lượng các trường hợp thử nghiệm và nó rõ ràng là công cụ tự động hóa phù hợp nhất cho các ứng dụng web.

Bây giờ bạn đã biết Selenium là gì, hãy cùng đi sâu hơn trong bài viết này về Hướng dẫn sử dụng Cucumber Selenium và hiểu tại sao lại sử dụng Cucumber với Selenium?

Tại sao sử dụng Dưa chuột với Selen?

Nhiều tổ chức sử dụng cho kiểm tra chức năng và hồi quy .Selenium và Cucumber là sự kết hợp tuyệt vời khi nói đến tự động hóa ứng dụng web, vì Cucumber cho phép bạn viết nhanh các bài kiểm tra của mình bằng ngôn ngữ giống tiếng Anh và Selenium cho phép bạn chạy trên nhiều tổ hợp trình duyệt khác nhau.

Công cụ dưa chuột dựa trênKhung phát triển theo hướng hành vi đóng vai trò là cầu nối giưaKỹ sư phần mềm và Nhà phân tích kinh doanh và cả giữaNhà phát triển và kiểm thử thủ công.

Khi sử dụng Selenium với Cucumber để tự động hóa thử nghiệm, các thử nghiệm được viết trong các tệp tính năng mà các bên liên quan khác nhau có thể hiểu được trong một môi trường nhanh nhẹn như Nhà phân tích kinh doanh. Cucumber cũng đi kèm với khả năng hỗ trợ nhiều tập lệnh và ngôn ngữ lập trình và JUnit được sử dụng để thực thi các tập lệnh này và tạo đầu ra.

Sau khi hiểu điều này, bây giờ chúng ta hãy xem các bước khác nhau để tạo ứng dụng Cucumber và chạy các trường hợp thử nghiệm.

Các bước tạo ứng dụng dưa chuột

Các bước khác nhau liên quan đến việc tạo ứng dụng Cucumber như sau:

  1. Tải xuống các tệp Jar của Cucumber và Selenium và định cấu hình đường dẫn xây dựng.
  2. Thêm Plugin Cucumber từ Eclipse Marketplace.
  3. Tạo một tệp tính năng và thêm các tình huống.
  4. Thực hiện các bước cho các tình huống.
  5. Viết lớp chạy và thực thi mã.

Bây giờ, hãy hiểu chi tiết từng bước này.

Bước 1: Tải xuống tệp Cucumber và Selenium Jar

đầu bếp và con rối là gì

Quả dưa chuột không thực sự tương tác với trình duyệt và biểu diễn hành động trên trang web đang thử nghiệm. Tương tác với trang web hành động đó được thực hiện bởi . Do lý do này, bạn sẽ cần Tải về Quả dưa chuột cũng như Selenium Webdriver tập tin jar . Nếu bạn muốn biết cách cài đặt Selenium trên hệ thống của mình, bạn có thể xem bài viết này trên Dưới đây là danh sách các tệp jar cho Cucumber.

  • Lõi dưa chuột
  • Cucumber-html
  • phạm vi bảo hiểm mã bảo hiểm
  • Cucumber-java
  • Dưa chuột-junit
  • Cucumber-jvm-deps
  • Báo cáo dưa chuột
  • Hamcrest-core
  • Gherkin
  • Junit

Sau khi bạn tải xuống các tệp jar này từ Kho lưu trữ Maven , bạn có thể định cấu hình đường dẫn xây dựng của dự án của mình và thêm tất cả .jar các tệp và thư viện như được hiển thị trong ảnh chụp nhanh bên dưới.

Bước 2: Bước tiếp theo là cài đặt Cucumber trên Eclipse của bạn. Đối với điều đó, bạn cần phải đi đến Trợ giúp -> Thị trường Eclipse -> Tìm kiếm dưa chuột và cài đặt Dưa chuột và tự nhiên trên nhật thực của bạn. Ảnh chụp nhanh dưới đây mô tả giống nhau.

Bước 3: Sau khi bạn cấu hình Cucumber, bước tiếp theo là tạo một tệp tính năng. Đầu tiên, bạn phải tạo một thư mục nguồn mới và sau đó thêm một tệp tính năng như hình dưới đây.

Tiếp theo, bạn cần xác định tên của tệp tính năng như hình dưới đây.

Sau khi tạo tệp tính năng, bạn có thể viết các tình huống như được hiển thị trong đoạn mã dưới đây.

Tình huống thử nghiệm I:

Tính năng: Đặt lại chức năng trên trang đăng nhập của Tình huống Ứng dụng: Xác minh nút Đặt lại Được đưa ra Mở Firefox và khởi chạy ứng dụng Khi Nhập Tên người dùng và Mật khẩu Sau đó Đặt lại thông tin đăng nhập

Bước 4: Sau đó, bạn cần triển khai các kịch bản với sự trợ giúp của các định nghĩa bước. Trong đoạn mã dưới đây, tôi đã triển khai các phương thức cho kịch bản mà tôi đã viết trong tệp tính năng.

package stepDefinitions import cuc.api.java.en.Given import Cuc.api.java.en Sau đó import Cuc dong.api.java.en.Khi public class Steps {@Given ('^ Mở Firefox và khởi chạy ứng dụng $' ) public void open_the_Firefox_and_launch_the_application () ném Throwable {System.out.println ('Bước này mở Firefox và khởi chạy ứng dụng.')} @When ('^ Nhập Tên người dùng và Mật khẩu $') public void enter_the_Username_and_Password () ném Throwable { System.out.println ('Bước này nhập Tên người dùng và Mật khẩu trên trang đăng nhập.')} @Then ('^ Đặt lại thông tin đăng nhập $') public void Reset_the_credential () ném Throwable {System.out.println ('Bước này nhấp vào nút Đặt lại. ')}}

Bước 5: Bây giờ, bước cuối cùng là tạo ‘ Á hậu lớp ' và thực hiện chương trình. Về cơ bản, cấu trúc dự án của bạn sẽ giống như được mô tả trong ảnh chụp nhanh bên dưới.

Trong ảnh chụp nhanh ở trên, ‘ Runner.java ' là một tệp thực thi. Bây giờ, hãy viết mã tệp này và hiểu cách hoạt động của nó.

package Runner import org.junit.runner.RunWith import Cucumber.api.CucumberOptions import Cucumber.api.junit.Cucumber @RunWith (Cucumber.class) @CucumberOptions (features = 'features', Keo = {'stepD'}) public class Á quân {}

Trong đoạn mã trên, tôi có ‘@CucumberOptions ’và chỉ định tên gói của cả tệp tính năng và tệp Runner. Vì vậy, nó sẽ triển khai các phương thức và chạy mã. Khi bạn chạy chương trình, nó sẽ hiển thị các phương thức từ định nghĩa bước. Của bạn đầu ra sẽ giống như hình dưới đây:

Bước này mở Firefox và khởi chạy ứng dụng. Bước này nhập Tên người dùng và Mật khẩu trên trang đăng nhập. Bước này bấm vào nút Reset. 1 Kịch bản (32m1 vượt qua) 3 Bước (32m3 vượt qua) 0 phút0,185 giây

Vì vậy, đây là cách bạn cần ghi tất cả các tệp và thực thi chương trình.

Kịch bản thử nghiệm II:

Bây giờ, hãy hiểu thêm một kịch bản trong đó tôi đã tích hợp Selenium với Cucumber.Hãy xem xét một tình huống mà bạn muốn kiểm tra trang web Twitter. Một trong các tình huống thử nghiệm sẽ xác minh thông tin đăng nhập. Với BDD, bạn có thể viết kịch bản thử nghiệm này ở định dạng sau:

Tính năng: Kiểm tra tình huống khói Twitter Tình huống: Kiểm tra đăng nhập bằng thông tin xác thực hợp lệ Được đưa ra Mở firefox và khởi động ứng dụng Khi tôi nhập tên người dùng hợp lệ và mật khẩu hợp lệ Sau đó người dùng sẽ có thể đăng nhập thành công

Tiếp theo, hãy viết lớp Định nghĩa bước để triển khai tất cả các tình huống.

package stepD import java.util.concurrent.TimeUnit import org.openqa.selenium.By import org.openqa.selenium.WebDriver import org.openqa.selenium.firefox.FirefoxDriver nhập dưa chuột.api.java.en.Given nhập dưa chuột.api .java.en. Sau đó nhập dưa chuột.api.java.en.Khi public class SmokeTest {WebDriver driver @Given ('^ Mở firefox và khởi động ứng dụng $') public void open_the_firefox_and_start_application () ném Throwable {System.setProperty ('webdriver .gecko.driver ',' C: geckodriver-v0.23.0-win64geckodriver.exe ') driver = new FirefoxDriver () driver.manage (). timeouts (). implicitWait (10, TimeUnit.SECONDS) driver.get (' https : //twitter.com/login ')} @When (' ^ Tôi nhập tên người dùng hợp lệ và mật khẩu hợp lệ $ ') public void I_enter_valid_username_and_valid_password () ném Throwable {driver.findElement (By.xpath (' // input [@ placeholder = 'Điện thoại, email hoặc tên người dùng'] ')). SendKeys (' your_username ') driver.findElement (By.xpath (' // div [@ class = 'clearfix field'] // input [@ placeholder = 'Password'] ')). sendKeys (' yo ur_password ')} @Then (' ^ người dùng có thể đăng nhập thành công $ ') public void user_should_be_able_to_login_successful () ném Throwable {driver.findElement (By.xpath (' // button [@ class = 'submit EdgeButton EdgeButton - chính EdgeButtom - phương tiện ']')). Nhấp vào ()}}

Trong chương trình trên, tôi đã sử dụng để khởi chạy trình duyệt firefox và sử dụngdriver.get ()nó sẽ điều hướng qua trang đăng nhập Twitter. Hơn nữa, nó sẽ định vị tên người dùng và hộp văn bản mật khẩu bằng cách sử dụng và nhập thông tin đăng nhập hợp lệ. Cuối cùng, nó sẽ đăng nhập thành công và chạy các trường hợp thử nghiệm. Bạn phải thực thi trình chạy dưới dạng một bài kiểm tra JUnit để biết liệu các bài kiểm tra được vượt qua hay không.

Ảnh chụp nhanh dưới đây cho thấy đầu ra của chương trình.

Đây là cách bạn cần để ghi tất cả các tệp và thực thi chương trình. Vì vậy, đó là tất cả về Hướng dẫn sử dụng Cucumber Selenium. Tôi hy vọng bạn đã hiểu các khái niệm và giúp tăng giá trị kiến ​​thức của bạn. Bây giờ, nếu bạn muốn hiểu rõ hơn về Selenium, bạn có thể xem .

Nếu bạn tìm thấy điều này “Hướng dẫn về Selenium Dưa chuột ' liên quan, thích hợp, kiểm tra của Edureka, một công ty học trực tuyến đáng tin cậy với mạng lưới hơn 250.000 người học hài lòng trải dài trên toàn cầu.

khung trong selen là gì

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần nhận xét của bài viết Hướng dẫn sử dụng Cucumber Selenium và chúng tôi sẽ liên hệ lại với bạn.