Домой Без рубрики Тестовые примеры JUnit в Java: простое руководство по JUnit 4.12 Hello World...

Тестовые примеры JUnit в Java: простое руководство по JUnit 4.12 Hello World со всеми деталями в одном

1088
0

Что такое Юнит?

JUnit — это простая, мощная среда с открытым исходным кодом для написания и запуска повторяемых тестов. Я люблю тесты JUnit. Во время разработки Java-проекта я широко использовал JUnit для покрытия кода . Это является примером архитектуры XUnit для модульного тестирования рамки .

Особенности JUnit включают в себя:

  1. Утверждения для тестирования ожидаемых результатов
  2. Тестовые приборы для обмена общими тестовыми данными
  3. Тест бегунов для запуска тестов

В этом уроке я расскажу о пунктах 1 и 3. В вашем проекте вам понадобятся зависимости от maven .

Junit Maven Зависимость

1
2
3
4
5
< зависимость >
< groupId > junit < / groupId >
< artifactId > junit < / artifactId >
< версия > 4.12 < / версия >
< / зависимость >

Давайте начнем писать код.

Шаг 1

Создать проект CrunchifyJunitTest и укажите пакет com.crunchify.junit , Вот структура пакета для быстрого ознакомления.

Шаг 2

Щелкните правой кнопкой мыши на CrunchifyJunitTest => Новый класс => CrunchifyJunitTest.java

CrunchifyJunitTest.java

Джава
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
пакет ком . crunchify. джунит ;
/ **
* @author Crunchify
*
* /
Импортировать статический орг. Junit . Утверждать . assertEquals ;
Импортировать орг. Junit . Тест ;
общественности учебный класс CrunchifyJunitTest {
@Тестовое задание
общественности недействительным testingCrunchifyAddition ( ) {
assertEquals ( «Вот тест для результата сложения , 30 , дополнение ( 27 , 3 ) ) ;
}
@Тестовое задание
общественности недействительным testingHelloWorld ( ) {
assertEquals ( «Вот тест для Hello World String:» , Привет + Мир , helloWorld ( ) ) ;
}
общественности ИНТ дополнение ( int х , ИНТ у ) {
вернуть Икс + у ;
}
общественности строка helloWorld ( ) {
строка Привет, мир знак равно Привет + + «Мир» ;
вернуть helloWorld ;
}
}

Шаг 3

Eclipse предложит и автоматически добавит org.junit.Test зависимость, когда вы набираете @Test .

Шаг 4

Чтобы проверить свой тест JUnit

  • Щелкните правой кнопкой мыши на классе
  • Нажмите на Run As
  • Нажмите на JUnit Test

Вы должны увидеть что-то вроде этого.

Шаг 5

Попробуйте изменить параметр ожидаемое значение параметра из 30 => 300 и из Hello World => Hello -- World и проверить снова.

1
2
3
4
5
6
7
8
9
@ Test
общественности недействительным testingCrunchifyAddition ( ) {
assertEquals ( «Вот тест для результата сложения , 300 , дополнение ( 27 , 3 ) ) ;
}
@ Test
общественности недействительным testingHelloWorld ( ) {
assertEquals ( «Вот тест для Hello World String:» , «Привет — Мир» , helloWorld ( ) ) ;
}

Шаг 6

Теперь давайте запустим тот же тест via other java программа Создайте CrunchifyRunnerJUnit.java

CrunchifyRunnerJUnit.java

Джава
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
пакет ком . crunchify. джунит ;
Импортировать орг. Junit . бегун. JUnitCore ;
Импортировать орг. Junit . бегун. Результат ;
Импортировать орг. Junit . бегун. уведомление. Неудача ;
/ **
* @author Crunchify
*
* /
общественности учебный класс CrunchifyRunnerJUnit {
общественности статический недействительным main ( Строка [ ] аргументы ) {
Результат результат знак равно JUnitCore . runClasses ( CrunchifyJunitTest . class ) ;
за ( Ошибка отказа : результат. getFailures ( ) ) {
Система. вне. Println (. отказ ToString ());
}
если ( результат . wasSuccessful ( ) ) {
Система. вне. println ( «Оба теста успешно завершены …» ) ;
}
}
}

Шаг 7

Бежать CrunchifyRunnerJUnit.java как Java Application ,

Шаг 8

В случае 1st code (исправьте ожидаемый параметр), вы должны увидеть результат примерно так:

1
Оба теста успешно завершены . , ,

Шаг 9

В случае 2nd code (неверный ожидаемый параметр), вы должны увидеть что-то вроде этого:

Результат

1
2
testingCrunchifyAddition ( com . crunchify . junit . CrunchifyJunitTest ) : Вот тест для Сложение Результат:    ожидается : < 300 > но было : < 30 >
testingHelloWorld ( com . crunchify . junit . CrunchifyJunitTest ) : Вот тест для Строка Hello World :    ожидается : < Привет [] Мир > но было : < Привет [ + ] Мир >

И все готово. Дайте мне знать, если у вас возникнут проблемы с запуском этого кода.

ЧИТАТЬ ТАКЖЕ:  [Atom.io] Как изменить значение предпочтительной длины строки с 80 на 120 столбцов?

Доступные аннотации в тестовом примере JUnit:

аннотирование

Описание

@Test public void method () Аннотация @Test указывает, что метод является тестовым методом.
@ Перед общедоступным методом void () Выполняет метод перед каждым тестом. Этот метод может подготовить тестовую среду (например, прочитать входные данные, инициализировать класс).
@ После публичного метода void () Выполняет метод после каждого теста. Этот метод может очистить тестовую среду (например, удалить временные данные , восстановить настройки по умолчанию).
@BeforeClass публичный метод void () Выполнит метод один раз, до начала всех тестов. Это может использоваться для выполнения трудоемких действий, например, для подключения к базе данных.
@AfterClass открытый метод void () Выполняет метод один раз после завершения всех тестов. Это может использоваться для выполнения действий по очистке, например, для отключения от базы данных .
@Ignore Будет игнорировать метод испытаний. Это полезно, когда базовый код был изменен, а контрольный пример еще не адаптирован. Или если время выполнения этого теста слишком длинное, чтобы его включить.
@Test (ожидается = Exception.class) Сбой, если метод не генерирует именованное исключение.
@Test (тайм-аут = 100) Сбой, если метод занимает более 100 миллисекунд .

Доступные методы тестирования утверждений:

утверждение

Описание

сбой (String) Пусть метод провалится. Может использоваться для проверки того, что определенная часть кода не достигнута. Или иметь неудачный тест до того, как тестовый код будет реализован.
assertTrue (true) / assertTrue (false) Всегда будет правдой / ложью. Может использоваться для предварительного определения результата теста, если тест еще не реализован.
assertTrue ([сообщение], логическое условие) Проверяет, что булево условие верно.
assertsEquals ([String message], ожидается, актуально) Проверяет, что два значения одинаковы. Примечание: для массивов ссылка проверяется не на содержание массивов.
assertsEquals ([Строковое сообщение], ожидаемый, фактический, допуск) Проверьте, что значения с плавающей запятой или двойные совпадают. Допуск — это количество десятичных знаков, которые должны быть одинаковыми.
assertNull ([сообщение], объект) Проверяет, что объект является нулевым.
assertNotNull ([сообщение], объект) Проверяет, что объект не является нулевым.
assertSame ([String], ожидаемый, фактический) Проверяет, что обе переменные ссылаются на один и тот же объект.
assertNotSame ([String], ожидаемый, фактический) Проверяет, что обе переменные ссылаются на разные объекты.
Тестовые примеры JUnit в Java: простое руководство по JUnit 4.12 Hello World со всеми деталями в одном

0.00 (0%) 0 votes

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь