JavaRush /Blog Java /Random-VI /JUnit phần II

JUnit phần II

Xuất bản trong nhóm
sự tiếp tục bắt đầu ở đây -> JUnit phần I
JUnit phần II - 1
Tôi cũng muốn cho bạn thấy phương thức này hoạt động như thế nào Assert.fail(String)- nếu phương thức này được gọi, quá trình kiểm tra sẽ thất bại. Thuận tiện nếu các phương thức khác của lớp Assert không thể kiểm tra cho chúng tôi. Giả sử chúng ta cần cấm chấp nhận new String(“”). Hãy thử thực hiện việc này bằng cách sử dụng hàm tạo và vô hiệu hóa việc truyền name = “” || null, age = 0; Sex = null. Đi thôi... Tôi đã thêm các trường bổ sung để thử nghiệm
private User user;
private User user1;
private User user2;

private User userNotAdd;
private User userNotAdd1;
và thay đổi phương phápsetUp()
@Before
public void setUp() throws Exception {
    user = new User("Eugene", 35, Sex.MALE);
    user1 = new User("Marina", 34, Sex.FEMALE);
    user2 = new User("Alina", 7, Sex.FEMALE);

    userNotAdd = new User("", 0, null);
    userNotAdd1 = new User(null, 0, null);
}
và thêm ba phương pháp thử nghiệm
@Test
public void newUser_EMPTY_NAME() {
    for (User user : User.getAllUsers()){
        if (user.getName() != null && user.getName().isEmpty()) {
            Assert.fail("Попытка создания пользователя с пустым именем");
        }
    }
}

@Test
public void newUser_AGE_ZERO() {
    for (User user : User.getAllUsers()) {
        if (user.getAge() <= 0) {
            Assert.fail("Попытка создания пользователя c не допустимым возрастом");
        }
    }
}

@Test
public void newUser_SEX_NO_NULL() {
    for (User user : User.getAllUsers()) {
        if (user.getSex() == null) {
            Assert.fail("Попытка создания пользователя с указанием пола = null");
        }
    }
}
Trong quá trình thử nghiệm, chúng tôi xem qua danh sách người dùng đã thêm và xem liệu có dữ liệu không hợp lệ nào không. Chúng tôi chạy thử nghiệm hàng loạt và chúng tôi thấy hình ảnh sau... JUnit phần II - 2 Bạn có thể thấy rằng các thử nghiệm của chúng tôi dành cho hàm tạo đã bị hỏng và một vài thử nghiệm khác cũng bị bắt. Bây giờ chúng ta cần thay đổi hàm tạo để nó không thêm một người dùng có tham số không hợp lệ trong danh sách người dùng, hãy làm như thế này:
public User(String name, int age, Sex sex) {
    if (name != null && !name.isEmpty() && age > 0 && sex != null){
        this.name = name;
        this.age = age;
        this.sex = sex;

        if (!hasUser()) {
            countId++;
            this.id = countId;
            allUsers.put(id, this);
        }
    }
}
Chúng tôi chạy thử nghiệm và thấy mọi thứ đều ổn. JUnit phần II - 3 Tóm lại, JUnit là một công cụ tuyệt vời để kiểm tra mã của bạn. JUnit sẽ hoạt động tốt hơn nữa khi kết hợp với Maven , khi xây dựng dự án, Maven chắc chắn sẽ chạy tất cả các thử nghiệm và sau đó xây dựng dự án đã hoàn thành của chúng tôi, nhưng nếu thử nghiệm thất bại, dự án sẽ không được xây dựng và chúng tôi sẽ biết lý do, và sẽ dễ dàng hơn để tìm ra chính xác sự cố ở đâu. Ưu điểm thứ hai của JUnit là trường hợp Refactoring , các bài kiểm tra JUnit sẽ giúp chúng ta đảm bảo tính logic của chương trình của chúng ta không bị phá vỡ. Và trong các dự án lớn, cuộc sống không thể thực hiện được nếu không có hệ thống kiểm tra tự động, mặc dù điều đó có thể xảy ra, nhưng dự án của bạn sẽ di chuyển với tốc độ ốc sên... hoặc đại loại như vậy... JUnit phần II - 4 Nếu chúng ta kiểm tra tốt mã của mình , thì chúng ta có thể chắc chắn rằng khách hàng của chúng ta, sản phẩm của chúng ta sẽ hoạt động tốt. P/S Tôi bày tỏ lòng biết ơn sâu sắc tới Victor Sergeev!!! Dưới đây là các liên kết đến bài học video mà anh ấy đã dạy chúng tôi: Cám ơn vì sự quan tâm của bạn!!! Chúc bạn có một tâm trạng vui vẻ!!! Và xin Chúa cứu bạn khỏi mã Hindu!!! ...ngoài ra, nếu ai muốn tìm hiểu sâu về mã nguồn của bài viết... hãy đến gõ cửa... Tôi sẽ chia sẻ phần mở đầu tại đây - JUnit phần I
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION