Разработчик (и) | Кент Бек, Эрих Гамма, Дэвид Сафф, Крис Васудеван |
---|---|
Первоначальный выпуск | 2002 |
Стабильная версия | 5.6.2 / 11 апреля 2020 г.; 6 месяцев назад (2020-04-11) |
Репозиторий | |
Написано на | Java |
Операционная система | Межплатформенный |
Тип | Модульное тестирование инструмент |
Лицензия | Общественная лицензия Eclipse (повторно лицензировано с CPL ранее) |
Веб-сайт | junit.org |
JUnit - это среда модульного тестирования для языка программирования Java. JUnit сыграл важную роль в разработке разработки через тестирование и является одним из семейства фреймворков модульного тестирования, известных под общим названием xUnit и возникших с SUnit.
JUnit связывается как JAR во время компиляции; структура находится в пакете junit.framework
для JUnit 3.8 и более ранних версий и в пакете org.junit
для JUnit 4 и более поздних версий.
Исследование, проведенное в 2013 году для 10 000 проектов Java, размещенных на GitHub, показало, что JUnit (в связке с slf4j-api ) был наиболее часто используемой внешней библиотекой. Каждая библиотека использовалась в 30,7% проектов.
Тестовое приспособление JUnit - это объект Java. В более старых версиях JUnit фикстуры должны были наследовать от junit.framework.TestCase
, но новые тесты, использующие JUnit 4, не должны этого делать. Методы тестирования должны быть аннотированы аннотацией @Test
. Если этого требует ситуация, также можно определить метод для выполнения до (или после) каждого (или всех) методов тестирования с помощью @Before
(или @After
) и аннотации @BeforeClass
(или @AfterClass
).
import org.junit. *; public class FoobarTest {@BeforeClass public static void setUpClass () throws Exception {// Код, выполняемый перед первым методом тестирования} @Before public void setUp () выдает исключение {// Код, выполняемый перед каждым тестом} @Test public void testOneThing () {// Код, проверяющий что-то одно} @Test public void testAnotherThing () {// Код, проверяющий другое} @Test public void testSomethingElse () {// Код, проверяющий что-то еще} @After public void tearDown () выдает исключение {// Код, выполняемый после каждого теста} @AfterClass public static void tearDownClass () выдает исключение {// Код, выполняемый после последнего метода тестирования}}