2015-11-02 12 views

Trả lời

9

Không cần phương pháp riêng để so sánh List. Có thể so sánh hai danh sách với org.testng.Assert#assertEquals(Object, Object).

Nếu hai danh sách ab là phi null, cuộc gọi Assert.assertEquals(a, b) nghĩa a.equals(b) sẽ được gọi sau đó.

java.util.List#equals là những gì bạn cần, như mô tả trong javadoc:

So sánh các đối tượng quy định với danh sách này cho bình đẳng. Trả về đúng nếu và chỉ khi đối tượng được chỉ định cũng là một danh sách, cả hai danh sách có cùng kích thước và tất cả các cặp phần tử tương ứng trong hai danh sách đều bằng nhau. (Hai phần tử e1 và e2 bằng nhau nếu (e1 == null? e2 == null: e1.equals (e2)).) Nói cách khác, hai danh sách được xác định là bằng nhau nếu chúng chứa cùng các phần tử trong cùng một thứ tự. Định nghĩa này đảm bảo rằng phương thức equals hoạt động đúng trên các triển khai khác nhau của giao diện Danh sách.

+0

Phải kiểm tra điều đó, nhưng âm thanh chính xác. Có một sự khác biệt cho assertEquals giữa JUnit và testng? – jan

+0

Trong thực tế, nó phụ thuộc: https://github.com/cbeust/testng/pull/790 nhưng nó sẽ làm việc hầu hết thời gian. – juherr

+0

Chỉ là một lưu ý nhỏ, không nên đặt hàng này phụ thuộc vào cả hai danh sách? – nullpointer

1

Nếu bạn không chống lại việc thêm phụ thuộc mới, tôi khuyên bạn nên xem xét AssertJ cung cấp nhiều xác nhận tuyệt vời về bộ sưu tập.

+0

Đây phải là nhận xét chứ không phải là câu trả lời. OP rõ ràng đã yêu cầu một giải pháp testng. – testerjoe2

Các vấn đề liên quan