TESTNG là gì? Những điều cần biết về TESTNG

Đối với các nhà lập trình viên Java thì cụm từ ” Testing Framework ” đều là Junit . Tuy nhiên khi nhắc đến testing Framework không chỉ có Junit mà còn có TestNG. Vậy TestNG là gì cùng mình tìm hiểu dưới bài viết dưới đây.

TESTNG là gì?

TESTNG

Trong từ TestNG có từ NG có nghĩa là Next Generation , nó không phải biến chuyển của Junit và Nunit , người tạo nên công cụ này là Cedric Beust một kỹ sư lập trình google.

TestNG là một testing Framework được xây dựng trên cảm hứng từ JUnit và Nunit nhưng đem đến một số tính năng mới làm cho nó mạnh hơn và dễ dàng sử dụng hơn. Là công cụ kiểm thử tự động cho phép tạo testcase thực thi các danh mục kiểm thử : Unit test, test chức năng, ….

TestNG là một automation testing testing Framework, là phiên bản nâng cấp với nhiều tính năng mạnh mẽ và vượt trội dễ dàng sử dụng và là công cụ kiểm thử tự động được sử dụng phổ biến  hiện nay.

Nó loại bỏ hấu hết các hạn chế khuôn mẫu cũ và cho phép nhà phát triển khả năng viết các bài kiểm tra linh hoạt và mạnh mẽ với sự trợ giúp của các chú thích đơn giản, …

Các tính năng nổi bật của TESTNG

  • Mô tả các thiết lập khác nhau khi kiểm thử phần mềm bằng file XML

  • Phân nhóm kiểm thử
  • Tạo mối quan hệ ràng buộc lẫn nhau giữa các module
  • Xác lập thời điểm cho các xử lý trước và sau
  • Cung cấp các chỉ dẫn Annotation – based để nhận diện phương thức test,

Một số ưu điểm của TESTNG

  • Nó cho phép tạo ra các bản báo cáo HTML của tiến trình thực thi.

  • Các chú thích giúp việc kiểm thử dễ dàng hơn.
  • Các trường hợp kiểm thử có thể được nhóm lại và được ưu tiên dễ dàng hơn.
  • TestNG có các annotation logic hơn và dễ hiểu hơn.
  • Có thể kiểm thử song song, Tạo ra các log bug, tạo data Parameterized action.
  • TestNG class không yêu cầu bắt buộc khai báo BeforeClass và AfterClass.
  • TestNG cho phép bạn xác định các test case phụ thuộc.

Các bước viết một test case sử dụng TESTNG

Viết các logic kinh doanh của bài kiểm tra 

Chèn các các chú thích TestNG , các mã viết

Thêm các thông tin bài test của bạn trong file testng.xml

Chạy testNG

Một số chú thích sử dụng trong TestNG

testng

@BeforeSuite: Phương thức chú thích sẽ chạy trước khi tất cả các thử nghiệm trong bộ phần mềm này được thực hiện.

@AfterSuite: Phương thức chú thích sẽ chạy sau khi tất cả các thử nghiệm trong bộ phần mềm này được thực hiện.

@BeforeTest: Phương thức chú thích sẽ chạy trước phương thức thử nghiệm thuộc về các lớp bên trong thẻ được thực hiện

@AfterTest: Phương thức chú thích sẽ chạy sau tất cả các phương thức thử nghiệm thuộc các lớp bên trong thẻ đã thực hiện.

@BeforeGroups: Danh sách các nhóm mà phương pháp cấu hình này sẽ chạy trước đó. Phương pháp này được đảm bảo chạy trước phương pháp thử nghiệm đầu tiên thuộc bất kỳ nhóm nào trong số các nhóm này được gọi.

@AfterGroups: Danh sách các nhóm mà phương pháp cấu hình này sẽ chạy sau đó. Phương pháp này được đảm bảo chạy sau phương pháp thử nghiệm cuối cùng thuộc về bất kỳ nhóm nào trong số này được gọi.

@BeforeClass: Phương thức chú thích sẽ được chạy trước khi phương thức thử nghiệm đầu tiên trong lớp hiện tại được thực hiện

@AfterClass: Phương thức chú thích sẽ được chạy sau khi phương thức thử nghiệm trong lớp hiện tại chạy

@BeforeMethod: Phương thức chú thích sẽ được chạy trước phương thức thử nghiệm.

@AfterMethod: Phương thức chú thích sẽ được chạy sau phương thức thử nghiệm.

Ưu điểm của việc sử dụng chú thích TESTNG là gì?

  • Nó xác định các phương pháp nó quan tâm bằng cách tìm kiếm các chú thích. Do đó tên phương thức không bị hạn chế trong bất kỳ mẫu hoặc định dạng nào.

  • Chúng ta có thể truyền các thông số bổ sung cho các chú thích.
  • Chú thích được đánh máy mạnh mẽ, do đó, trình biên dịch sẽ đánh dấu lỗi sai ngay lập tức.
  • Các lớp kiểm tra không còn cần phải mở rộng bất cứ điều gì (như Test Case, cho JUnit 3).

Một số điều cần biết về TESTNG

Một số cách run TestNG

Thực hiện run trực tiếp từ Eclipse IDE

Thực hiện run thông qua IntelliJ IDEA IDE

Run từ command Line

Thực hiện run với ant build tool

TestNG Framework là gì?

testng framework

TestNG là một framework thử nghiệm mã nguồn mở cho Java. Nó được phát triển trên cùng dòng với JUnit và NUnit. Một số tính năng hữu ích và nâng cao được cung cấp bởi TestNG làm cho nó trở thành một framework cộng tác mạnh mẽ hơn so với các công cụ cùng ngành. NG trong TestNG là viết tắt của ‘Next Generation’. Được tạo bởi Cedric Beust, nó được các nhà phát triển và người kiểm thử sử dụng thường xuyên hơn trong việc tạo test case, do dễ sử dụng nhiều tính năng chú thích, nhóm, phụ thuộc, ưu tiên và tham số.

Parametric testing trong TESTNG là gì 

Parametric testing cho phép chúng ta chạy lại cùng một test case  nhưng các giá trị test data khác nhau. Trong ví dụ trường hợp đăng nhập , ta có thể đăng nhập với nhiều dữ liệu test có cặp username và password khác nhau. TestNG cho phép chúng ta có thể truyền các tham số vào trong các test method bằng 2 cách: Sử dụng trong file TestNG.xml và với data providers.

Các cách để xuất báo cáo trong TESTNG là gì?

TestNg cung cấp hai cách giúp chúng ta có thể xuất báo cáo, đó là:

Sử dụng Reporters: đối với một class reporting, nó cũng sẽ thực thi cái interface là org.testng/Reporter. Khi mà tất cả các test suite chạy xong, những class này sẽ được gọi đến, lúc này tất cả các thông tin của các đối tượng trong toàn bộ quá trình thực hiện test sẽ được gửi đến class này.

Sử dụng Listeners: một class listener sẽ thực thi một interface là org.testng./TestListener. Trong khi run test, TestNg sẽ gửi thông tin tới các class đó mỗi khi các test case đó ở các trạng thái như: est begins, finishes, skips, passes hoặc fails.

5/5 – (1 bình chọn)