JavaRush /وبلاگ جاوا /Random-FA /JUnit قسمت دوم

JUnit قسمت دوم

در گروه منتشر شد
ادامه از اینجا شروع شد -> JUnit قسمت I
JUnit قسمت II - 1
من همچنین می خواهم به شما نشان دهم که روش چگونه کار می کند Assert.fail(String)- اگر این متد فراخوانی شود، تست شکست می خورد. اگر متدهای دیگر کلاس Assert نتوانند برای ما بررسی کنند، راحت است. فرض کنید باید پذیرش را منع کنیم new String(“”). بیایید سعی کنیم این کار را روی سازنده انجام دهیم و عبور را غیرفعال کنیم name = “” || null, age = 0; Sex = null. بریم... فیلدهای اضافی برای تست اضافه کردم
private User user;
private User user1;
private User user2;

private User userNotAdd;
private User userNotAdd1;
و روش را تغییر دادsetUp()
@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);
}
و سه روش تست اضافه کرد
@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");
        }
    }
}
در تست ها، لیست کاربران اضافه شده را مرور می کنیم و می بینیم که آیا داده های نامعتبری وجود دارد یا خیر. تست ها رو بصورت دسته جمعی اجرا میکنیم و عکس زیر رو میبینیم... JUnit قسمت II - 2 میبینید که تست های سازنده ما خراب شده و یکی دو تا تست دیگه هم گیر میاد حالا باید سازنده رو عوض کنیم که اضافه نشه یک کاربر با پارامترهای نامعتبر در لیست کاربران، اجازه دهید این کار را به صورت زیر انجام دهیم:
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);
        }
    }
}
ما تست های خود را اجرا می کنیم و می بینیم که همه چیز زیبا است.به JUnit قسمت II - 3 طور خلاصه، JUnit یک ابزار عالی برای پوشش کد شما با تست ها است. JUnit در ارتباط با Maven حتی بهتر کار خواهد کرد ، در هنگام ساخت پروژه، Maven قطعا تمام تست ها را اجرا می کند و سپس پروژه تمام شده ما را می سازد، اما اگر تست ها شکست بخورند، پروژه ساخته نمی شود و ما دلایل آن را خواهیم دانست. و تشخیص اینکه دقیقا کجا خراب است آسان تر خواهد بود. دومین مزیت JUnit مورد Refactoring است ، تست‌های JUnit به ما کمک می‌کنند مطمئن شویم که منطق برنامه‌مان خراب نمی‌شود. و در پروژه های بزرگ زندگی بدون سیستم تست اتوماتیک امکان پذیر نیست، هرچند ممکن است اما پروژه شما با سرعت حلزون حرکت می کند... یا چیزی شبیه به آن... JUnit قسمت II - 4 اگر کد خود را به خوبی با تست ها پوشش دهیم. ، پس ما می توانیم مطمئن باشیم که مشتری ما، محصول ما عالی کار خواهد کرد. P/S تشکر عمیق خود را از ویکتور سرگئیف ابراز می کنم!!! در اینجا پیوندهایی به درس ویدیویی که او در آن به ما آموزش داده است: با تشکر از توجه شما!!! روحیه خوبی داشته باشید!!! و خداوند شما را از شر کد هندو نجات دهد!!! ...همچنین، اگر کسی علاقه مند به بررسی کد منبع مقاله است... بیا... شروع را اینجا به اشتراک می گذارم - بخش اول JUnit
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION