TestNG - Chú thích cơ bản
Cách truyền thống để chỉ ra các phương pháp kiểm tra trong JUnit 3 là đặt tên của chúng với kiểm tra. Đây là một phương pháp rất hiệu quả để gắn thẻ các phương thức nhất định trong một lớp là có ý nghĩa đặc biệt, nhưng việc đặt tên không được mở rộng cho lắm (nếu chúng ta muốn thêm nhiều thẻ hơn cho các khung khác nhau thì sao?) Và khá linh hoạt (nếu chúng ta muốn chuyển các tham số bổ sung vào khung thử nghiệm?).
Chú thích đã được chính thức thêm vào ngôn ngữ Java trong JDK 5 và TestNG đã lựa chọn sử dụng chú thích để chú thích các lớp thử nghiệm.
Đây là danh sách các chú thích mà TestNG hỗ trợ -
Sr.No. | Chú thích & Mô tả |
---|---|
1 | @BeforeSuite Phương thức chú thích sẽ chỉ được chạy một lần trước khi tất cả các thử nghiệm trong bộ phần mềm này chạy. |
2 | @AfterSuite Phương thức chú thích sẽ chỉ được chạy một lần sau khi tất cả các thử nghiệm trong bộ phần mềm này đã chạy. |
3 | @BeforeClass Phương thức chú thích sẽ chỉ được chạy một lần trước khi phương thức thử nghiệm đầu tiên trong lớp hiện tại được gọi. |
4 | @AfterClass Phương thức chú thích sẽ chỉ được chạy một lần sau khi tất cả các phương thức kiểm tra trong lớp hiện tại đã chạy. |
5 | @BeforeTest Phương thức chú thích sẽ được chạy trước khi chạy bất kỳ phương thức kiểm tra nào thuộc các lớp bên trong thẻ <test>. |
6 | @AfterTest Phương thức chú thích sẽ được chạy sau khi tất cả các phương thức kiểm tra thuộc các lớp bên trong thẻ <test> đã chạy. |
7 | @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 sẽ chạy ngay trước khi phương pháp thử nghiệm đầu tiên thuộc bất kỳ nhóm nào trong số này được gọi. |
số 8 | @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 sẽ chạy ngay sau khi phương pháp thử nghiệm cuối cùng thuộc bất kỳ nhóm nào trong số này được gọi. |
9 | @BeforeMethod Phương thức được chú thích sẽ được chạy trước mỗi phương pháp thử nghiệm. |
10 | @AfterMethod Phương thức được chú thích sẽ được chạy sau mỗi phương pháp thử nghiệm. |
11 | @DataProvider Đánh dấu một phương pháp là cung cấp dữ liệu cho một phương pháp thử nghiệm. Phương thức chú thích phải trả về một Đối tượng [] [], trong đó mỗi Đối tượng [] có thể được gán danh sách tham số của phương thức thử nghiệm. Phương thức @Test muốn nhận dữ liệu từ DataProvider này cần sử dụng tên dataProvider bằng với tên của chú thích này. |
12 | @Factory
Đánh dấu một phương thức là một nhà máy trả về các đối tượng sẽ được TestNG sử dụng dưới dạng các lớp Kiểm tra. Phương thức phải trả về Object []. |
13 | @Listeners Xác định người nghe trên một lớp thử nghiệm. |
14 | @Parameters Mô tả cách truyền tham số cho phương thức @Test. |
15 | @Test Đánh dấu một lớp hoặc một phương thức là một phần của bài kiểm tra. |
Lợi ích của việc sử dụng chú thích
Sau đây là một số lợi ích của việc sử dụng chú thích -
TestNG xác định các phương pháp mà nó quan tâm, bằng cách tra cứu các chú thích. Do đó, tên phương thức không bị giới hạn ở bất kỳ mẫu hoặc định dạng nào.
Chúng tôi có thể chuyển các tham số bổ sung cho các chú thích.
Chú thích được đánh mạnh, vì vậy trình biên dịch sẽ gắn cờ bất kỳ lỗi nào ngay lập tức.
Các lớp thử nghiệm không còn cần phải mở rộng bất kỳ thứ gì (chẳng hạn như TestCase, cho JUnit 3).