Cách thực hiện các trường hợp kiểm thử thất bại trong TestNG: Selenium webdriver

Trong hướng dẫn này, bạn sẽ học-

Tạo ra một Selenium Dự án

Chuẩn bị dự án

Bước 1) In Eclipse, Tạo nên Java dự án bằng cách nhấp vào mới Java Dự án

Tạo ra một Selenium Dự án

Bước 2) Trong bước này,

  1. Đặt tên dự án
  2. Chọn môi trường thực thi
  3. Chọn tùy chọn Bố cục dự án
  4. Bấm vào nút “Hoàn tất”.

Tạo ra một Selenium Dự án

Khi bạn nhấp vào nút kết thúc. Dự án java “TestProject” được tạo. “TestProject” sẽ trông như thế này.

Tạo ra một Selenium Dự án

Bước 3) Mở dự án mới được tạo đó. Bạn sẽ có thể thấy thư mục “src” trong Package Explorer.

  1. Nhấp chuột phải vào dự án và chọn “Mới”
  2. Chọn gói tùy chọn

Tạo ra một Selenium Dự án

Bước 4) Trong bước này,

  1. Duyệt thư mục src và chọn gói
  2. Đặt tên gói và
  3. Cuối cùng, nhấp vào nút kết thúc. (Tên gói->com.test)

Tạo ra một Selenium Dự án

Sau khi nhấp vào “kết thúc”, cấu trúc dự án sẽ như thế này:

Tạo ra một Selenium Dự án

Bước 5) Trong bước này,

  1. Bây giờ, nhấp chuột phải vào gói mới tạo và
  2. Chọn tùy chọn “lớp.”

Tạo ra một Selenium Dự án

Một cửa sổ mới sẽ mở ra.

Bước 6) Trong bước này,

  1. Đặt tên “lớp”
  2. Chọn công cụ sửa đổi
  3. Duyệt và chọn siêu lớp java.lang.object
  4. Bấm vào nút kết thúc.

Ở đây, bạn đang tạo hai lớp cũ: DemoA, DemoB.

Đầu tiên tạo lớp DemoA.

Tạo ra một Selenium Dự án

Khi bạn nhấp vào nút “Hoàn tất”. Sau đó nó sẽ tạo lớp như thế này:

Tạo ra một Selenium Dự án

Tương tự, tạo lớp DemoB, Khi bạn nhấp vào Nút “Hoàn tất”, lớp sẽ trông như bên dưới-

Tạo ra một Selenium Dự án

Bước 7) Nếu bạn đã cài đặt TestNG thư viện chỉ cần nhấp vào Java Dự án—>Thuộc tính.

Tạo ra một Selenium Dự án

Bước 8) Bây giờ trong cửa sổ thuộc tính,

  1. Nhấp vào Java Xây dựng đường dẫn
  2. Bấm vào Thư viện
  3. Bấm vào Thêm thư viện.

Tạo ra một Selenium Dự án

Trang Tiếp

  1. Bấm vào “TestNg” và sau đó
  2. Nhấp vào “Tiếp theo”.

Tạo ra một Selenium Dự án

Sau đó Click vào nút “kết thúc”.

Tạo ra một Selenium Dự án

Sau đó, hãy viết đoạn mã sau.

Dành cho lớp DemoA

Tạo ra một Selenium Dự án

Giải thích mã:

  • Driver.manage().window().maximize();

Dòng này sẽ tối đa hóa cửa sổ Trình duyệt.

  • driver.get(https://www.google.co.in);

Dòng này sẽ nhập URL được chỉ định vào trường URL.

  • driver.findElement(By.name(“q”)).sendKeys(“Hi”);

Dòng này sẽ xác định hộp tìm kiếm “Google” và nhập dữ liệu bạn đã gửi bằng phương thức sendKeys.

Kết quả: Chương trình trên có lỗi nên không thể thực thi được.

Tương tự với Class DemoB,

Tạo ra một Selenium Dự án

Những từ gạch chân màu đỏ là lỗi ở đây. Bởi vì bạn chưa thêm tệp jar chứa các lớp và giao diện này. Để loại bỏ các lỗi có trong đoạn mã trên, hãy thêm tệp jar tương ứng. Nhấp chuột phải vào Java Dự án và chọn "Thuộc tính".

Tạo ra một Selenium Dự án

Bước 8) Trong cửa sổ thuộc tính,

  1. Nhấp vào Java Xây dựng đường dẫn trên ngăn điều hướng bên trái.
  2. Bấm vào tab thư viện,
  3. Nhấp vào Thêm JAR bên ngoài và chọn Selenium-tập tin jar độc lập
  4. Bấm vào nút “OK”.

Tạo ra một Selenium Dự án

Sau bước này, tất cả các lỗi sẽ tự động được xóa. Nếu không, hãy di chuột qua mã đang hiển thị lỗi và nhập tất cả các lớp và giao diện cần thiết.

Đối với @test nếu vẫn hiển thị lỗi thì hãy đặt chuột vào đó. Nó sẽ hiển thị các tùy chọn có thể. Sau đó nhấp vào thêm TestNG Tùy chọn thư viện. Tương tự, làm điều đó cho 'lớp' khác.

Sau khi viết mã của bạn bên trong cả hai lớp tức là DemoA, DemoB, hãy chuyển sang bước tiếp theo.

Bước 9) Trong bước này,

  1. Nhấp chuột phải vào Dự án và
  2. Chọn thư mục tùy chọn để tạo một thư mục có tên là 'lib' và dán tệp jar testNG và tệp jar selenium (selenium-server-standalone ).(Kiểm tra và Selenium-server-standalone jar file cần được tải xuống từ web và lưu trữ bên trong hệ thống của bạn. Bạn cần phải tự tay vào thư mục đó và sao chép hai jar này và nhấp chuột phải vào thư mục 'lib' có trong eclipse và nhấp vào dán)

Tạo ra một Selenium Dự án

Bước 10) Trong bước này,

1. Chọn thư mục mẹ

2. Đặt tên thư mục là 'lib' và (Mục đích chính của việc thêm hai tệp jar này vào thư mục lib là khi thực thi từ dấu nhắc lệnh, bạn có thể cho trình biên dịch biết rằng các tệp jar cần thiết để thực thi chương trình có ở vị trí này. Nếu bạn muốn thực thi testng.xml từ eclipse thì thư mục lib này không bắt buộc)

3. Nhấp vào nút 'hoàn tất'

Tạo ra một Selenium Dự án

Kiểm tra và Selenium-server-standalone jar file cần được tải xuống từ web và lưu trữ bên trong hệ thống của bạn. Bạn cần phải tự tay vào thư mục đó và sao chép hai jar này và nhấp chuột phải vào thư mục 'lib' có trong eclipse và nhấp vào dán

Sau khi tạo thư mục, bước tiếp theo sẽ là chuyển đổi các chương trình DemoA và DemoB của chúng tôi thành tệp Testng.xml.

Chuyển đổi và thực thi Selenium Dự án tới TestNG

Bước 1) Trong bước này,

  1. Chọn hai tệp java có trong gói và nhấp chuột phải.
  2. Chọn tùy chọn có tên “testNG.”
  3. Nhấp vào chuyển đổi sang “testNG”.

Chuyển đổi và thực thi Selenium Dự án tới TestNG

Bước 2) Một cửa sổ mới sẽ mở ra. Trong cửa sổ này, nhập các chi tiết như

  1. Địa điểm
  2. Tên bộ
  3. Tên bài kiểm tra
  4. Lựa chọn lớp học
  5. Chế độ song song
  6. Bấm vào nút “Hoàn tất”

Chuyển đổi và thực thi Selenium Dự án tới TestNG

Sau đó, tệp testng.xml được tạo trong dự án java và nó sẽ trông như thế này.

Chuyển đổi và thực thi Selenium Dự án tới TestNG

(nếu bạn muốn chạy tệp testng.xml đó thì hãy nhấp chuột phải vào tệp testng.xml đó có trên ngăn điều hướng bên trái trong Package Explorer và nhấp vào chạy dưới dạng TestNG Thượng hạng. )

Bước 3) Tệp bộ testng.xml sẽ trông như thế này:

Chuyển đổi và thực thi Selenium Dự án tới TestNG

Nếu bạn muốn thực thi lớp DemoA trước, hãy xóa dòng hoàn chỉnh đó và thêm nó trước lớp DemoB như thế này:

Chuyển đổi và thực thi Selenium Dự án tới TestNG

Chuyển đổi và thực thi Selenium Dự án tới TestNG

Bước 4) Sau khi thực thi tệp testng.xml, nó sẽ hiển thị kết quả theo cách sau. (Vì bạn chưa viết bất kỳ câu lệnh thực thi nào bằng System.out.println() nên nó không in bất cứ thứ gì trên cửa sổ bảng điều khiển).

Chuyển đổi và thực thi Selenium Dự án tới TestNG

Đây là một trong những cách bạn sẽ thực thi thử nghiệm thông qua Eclipse, nếu bạn muốn thực thi cùng một tệp bộ testng.xml chứa hai tệp lớp như DemoA, DemoB từ dấu nhắc lệnh, bạn cần làm theo các bước dưới đây.

Bây giờ hãy mở dấu nhắc lệnh và đi tới không gian làm việc của Project.

Thực hiện TestNG thông qua dòng lệnh

Bạn cần tìm vị trí của Project Space

Bước 1) Đầu tiên nhấp chuột phải vào Java Dự án và chọn tùy chọn thuộc tính. Trong cửa sổ thuộc tính chọn tài nguyên tùy chọn.

Thực hiện TestNG thông qua dòng lệnh

Bước 2) Bây giờ khi bạn nhấp vào liên kết “tài nguyên”, hãy hiển thị trong ngăn điều hướng bên trái. Nó sẽ hiển thị chính xác nơi dự án được lưu trữ

Thực hiện TestNG thông qua dòng lệnh

Không gian làm việc của dự án là C:\Users\User\Desktop\Guru99\TestProject. Vì vậy, bạn đang thay đổi thư mục đến vị trí cụ thể đó.

Bước 3) Sau đó nhập lệnh sau. (Lệnh này là lệnh chung)

Thực hiện TestNG thông qua dòng lệnh

java –cp “đường dẫn của thư mục lib có trong không gian làm việc\*; đường dẫn của thư mục bin có trong không gian làm việc của dự án; đường dẫn của tệp testng.jar có trong thư mục lib của không gian làm việc của dự án” org.testng.TestNG testng.xml

nhưng đối với dự án của chúng tôi, bạn cần viết lệnh sau.

Java –cp  "C:\Users\User\Desktop\Guru99\TestProject\lib\*;
  C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG testng.xml

Bước 4) Sau đó nhấn Enter. Cả hai lớp DemoA và DemoB sẽ bắt đầu thực thi. Cuối cùng, nó sẽ hiển thị kết quả trên dấu nhắc lệnh.

Thực hiện TestNG thông qua dòng lệnh

Cách chỉ chạy các trường hợp kiểm thử thất bại

Nếu bạn chỉ muốn thực hiện các trường hợp kiểm thử thất bại thông qua Eclipse, sau đó làm mới dự án trước tiên.

Bước 1) Nhấp chuột phải vào dự án java (Bản demo A và B).

Chọn tùy chọn làm mới hoặc chỉ cần chọn dự án java và nhấn F5.

Bước 2) Sau đó, bạn sẽ có thể thấy thư mục test-output.

Trong thư mục đó, bạn có một tệp có tên testng-failed.xml.

Chỉ chạy các trường hợp còn lại không thành công

Bước 3) Nhấp chuột phải vào tệp này và nhấp vào chạy dưới dạng và chọn tùy chọn có tên “testNG suite”.

Giả sử nếu bạn có ba trường hợp thử nghiệm nếu tất cả các trường hợp thử nghiệm được thực hiện thành công nghĩa là bạn không thể thấy thư mục này trong thư mục đầu ra thử nghiệm. Thư mục này sẽ chỉ xuất hiện khi một trong các test case bị lỗi. Sau đó chạy tệp này, nó sẽ chỉ chạy các trường hợp thử nghiệm thất bại.

Chỉ chạy các trường hợp còn lại không thành công

Chạy tệp testng-failed.xml từ dòng lệnh

Bước 1) Để chạy các trường hợp kiểm thử thất bại trong dấu nhắc lệnh. Mở dấu nhắc lệnh và đi tới không gian làm việc của Dự án.

Chạy tệp Testng-failed.xml từ dòng lệnh

Không gian làm việc dự án của tôi là C:\Users\User\Desktop\Guru99\TestProject. Vì vậy, bạn sẽ thay đổi thư mục đến vị trí cụ thể đó.

Bước 2) Nhập lệnh sau. (Lệnh này là lệnh chung)

java –cp “đường dẫn của thư mục lib có trong không gian làm việc\*; đường dẫn của thư mục bin có trong không gian làm việc của dự án; đường dẫn của tệp testing.jar có trong thư mục lib của không gian làm việc của dự án” org.testng.TestNG đầu ra thử nghiệm/testng-failed.xml

Đối với dự án của chúng ta, bạn cần viết lệnh sau.

Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*;
C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG test-output/testng-failed.xml

Bước 3) Sau đó nhấn Enter. Nó sẽ chỉ chạy các lớp bị lỗi và chỉ hiển thị tương ứng với lớp đó.

Ở lớp trên tức là DemoB chỉ cần thay đổi đoạn code như thế này.

driver.findElement(By.name("a")).sendKeys("Bye");

Đoạn mã trên sẽ không tìm thấy bất kỳ phần tử nào. Vì vậy, nó sẽ ném ngoại lệ. Nhưng trong chương trình của chúng tôi, bạn không xử lý ngoại lệ nên chương trình của chúng tôi sẽ ngừng thực thi đoạn mã còn lại. Vì lý do này, ClassB sẽ thất bại.

Chạy tệp Testng-failed.xml từ dòng lệnh

Tổng kết

  • TestNG là Khung kiểm thử tự động được lấy cảm hứng từ Junit và chứa nhiều chú thích khác nhau.
  • TestNG tạo các báo cáo theo chuẩn của nó, trong đó có những nội dung sau:
  • Có bao nhiêu trường hợp thử nghiệm?
  • Có bao nhiêu trường hợp thử nghiệm được thông qua?
  • Có bao nhiêu trường hợp thử nghiệm thất bại?
  • Có bao nhiêu trường hợp thử nghiệm bị bỏ qua?
  • Nhiều trường hợp kiểm thử có thể được nhóm lại dễ dàng và thực thi chúng bằng cách chuyển đổi các lớp kiểm thử thành tệp bộ kiểm thử.
  • TestNG có thể dễ dàng tích hợp với các công cụ của bên thứ ba khác. Nó cung cấp các tính năng khác nhau như gán mức độ ưu tiên cho các trường hợp kiểm thử, thực hiện cùng một trường hợp kiểm thử nhiều lần bằng cách sử dụng số lần gọi.
  • Nếu bất kỳ trường hợp kiểm thử nào không thành công khi thực hiện nhiều trường hợp kiểm thử, bạn có thể thực hiện riêng trường hợp kiểm thử cụ thể đó.
  • Phương thức tĩnh “log” của lớp Reporter có thể được sử dụng để lưu trữ thông tin ghi nhật ký có trong org.testng