Обновить
128K+

Java *

Объектно-ориентированный язык программирования

246,67
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Туториал по JUnit 5 - Аннотация @AfterAll

Время на прочтение3 мин
Охват и читатели6.3K

Это продолжение туториала по JUnit 5. Введение опубликовано здесь.

Аннотация JUnit 5 @AfterAll является заменой аннотации @AfterClass в JUnit 4. Она используется как метод очистки для тестового класса.

@AfterAll используется для обозначения того, что аннотированный метод должен быть выполнен после всех тестов в текущем тестовом классе.

Читать далее

Туториал по JUnit 5 - Аннотация @AfterEach

Время на прочтение2 мин
Охват и читатели7.7K

Это продолжение туториала по JUnit 5. Введение опубликовано здесь.

Аннотация @AfterEach используется для обозначения того, что аннотированный метод должен выполняться после каждого метода, помеченного @Test, @RepeatedTest, @ParameterizedTest, или @TestFactory в текущем классе.

Аннотация JUnit 5 @AfterEach является заменой аннотации @After в JUnit 4.

Читать далее

Туториал по JUnit 5 - Аннотация @BeforeEach

Время на прочтение3 мин
Охват и читатели20K

Это продолжение туториала по JUnit 5. Введение опубликовано здесь.

Аннотация @BeforeEach используется для обозначения того, что аннотированный метод должен выполняться перед каждым методом @Test, @RepeatedTest, @ParameterizedTest, или @TestFactory в текущем классе.

Аннотация JUnit 5 @BeforeEach является одним из методов жизненного цикла и заменяет аннотацию @Before в JUnit 4.

Читать далее

Туториал по JUnit 5 - Аннотация @BeforeAll

Время на прочтение2 мин
Охват и читатели22K

Это продолжение туториала по JUnit 5. Введение опубликовано здесь.

Аннотация JUnit 5 @BeforeAll обозначает метод, который является методом жизненного цикла. @BeforeAllэто замена @BeforeClassаннотации в JUnit 4.

Читать далее

Как внедрить Contract-First OpenAPI и как устроен центр авторизаций

Время на прочтение1 мин
Охват и читатели4.2K

Переходим к докладам по backend с IT-конференции ЮMoneyDay.

Первый кейс о том, как мы внедряли Contract-First. Описали процесс перехода от Сode-First к написанию OpenAPI-спецификаций и генерации кода по ним.

Во втором кейсе разбираем анатомию центра авторизаций. Рассказали, как организовать разработку и поддержку множества критичных процессов и спокойно спать по ночам.

Смотреть доклады по backend

Spring Cloud Config — обновление конфигурации

Время на прочтение8 мин
Охват и читатели46K

Spring Cloud Config позволяет хранить настройки конфигурации сервисов в git-репозитории и управлять настройками централизованно.

В этой статье поговорим об обновлении параметров, получаемых с сервера конфигурации.

Читать далее

Туториал по JUnit 5 - Жизненный цикл JUnit 5 теста

Время на прочтение4 мин
Охват и читатели22K

Это продолжение туториала по JUnit 5. Введение опубликовано здесь.

В JUnit 5 жизненный цикл теста управляется четырьмя основными аннотациями, то есть @BeforeAll, @BeforeEach, @AfterEach и @AfterAll. Вместе с тем, каждый тестовый метод должен быть помечен аннотацией @Test из пакета org.junit.jupiter.api.

Читать далее

Туториал по JUnit 5  - Введение

Время на прочтение6 мин
Охват и читатели168K

В этом туториале по JUnit 5 рассказывается о том, как JUnit адаптировал стиль кодирования Java 8 и некоторые другие функции. Узнайте, чем JUnit 5 отличается от JUnit 4.

JUnit 5 - наиболее широко используемая среда тестирования для приложений Java. JUnit долгое время отлично справлялся со своей задачей.

Между тем, JDK 8 привнес в java интересные функции и, в первую очередь, лямбда-выражения. JUnit 5 был нацелен на адаптацию стиля программирования Java 8; вот почему Java 8 является минимально необходимой версией для создания и выполнения тестов в JUnit 5 (хотя можно запускать тесты, написанные с помощью JUnit 3 или JUnit 4 для обратной совместимости).

Читать далее

WEKA. Руководство по использованию

Время на прочтение4 мин
Охват и читатели20K

Начав изучать библиотеку Weka я обнаружила, что в Интернете очень мало информации о ней на русском языке – как с ней работать и как ее использовать. Эта статья будет вводной для знакомства с библиотекой.

Читать далее

Senior Java Developer — как проходят собеседования

Время на прочтение5 мин
Охват и читатели56K

Я прошел за свою деятельность больше 100 собеседований на позиции Senior Java Developer, и скажу я вам, что накопилось много интересных моментов, которыми и хочется поделиться.

Это не инструкция для прохождения собеседований, со списком вопросов.

Читать далее

IT Nights 2021: тайна возвращения образовательного IT-шоу

Время на прочтение5 мин
Охват и читатели2.1K

Технические специалисты FIIO отправили в Татарстан специализированный стелс-дрон под кодовым обозначением Order256, который позволил проникнуть в кибернетизированную систему Иннополиса и выяснить подробности.

На данный момент Order256 сумел установить, что мероприятие шифруется под кодовым именем IT Nights 3:0, и ведется застройка секретного бункера в Университете Иннополис. Нам удалось получить сведения и о некоторых человеческих объектах, согласившихся сделать доклады в рамках рассекреченной конференции. 

Дешифрованный список спикеров прилагается к данному файлу.

Снять гриф секретности

Как устроен вывод Generic-типов в Java

Время на прочтение9 мин
Охват и читатели18K

Добрый день! Меня зовут Владислав Верминский, я отвечаю за развитие профессии JVM-разработчика в Райффайзенбанке. В этой статье я расскажу про неоднозначность вывода типов в Java. На первый взгляд с ним всё очевидно, но когда сталкиваешься со странным поведением, возникают вопросы — начинает казаться, что какие-то части кода работают неправильно. Однако, после анализа становится понятно, что всё очень непросто, но при этом всё работает по своей спецификации.

Читать далее

JUnit — создание отчетов в формате HTML

Время на прочтение3 мин
Охват и читатели13K

Это продолжение туториала по JUnit 5. Введение опубликовано здесь.

Рассмотрим как создавать HTML-отчет для результатов выполнения тестов JUnit. В этом примере я создаю HTML-отчет для проекта JUnit-Examples, представленного на Github.

Читать далее

Ближайшие события

Грабли, спрятанные в Kotlin

Время на прочтение5 мин
Охват и читатели17K

Kotlin создавался, чтобы избежать некоторых проблем Java. Но как и в любом языке, есть в нем свои особенности. Разрабатывая собственный проект, мы наткнулись на несколько таких моментов. Часть стреляет вам в колено на продакшене, только если вы ими злоупотребляете. Другая отражается на производительности высоконагруженных систем. Все эти моменты сложно заметить, поскольку их не подсвечивают специально плагины для IDE, да и в целом на первый взгляд код похож на валидный.

В этой статье мы поговорим о том, на что нужно обратить внимание.

Читать далее

8 советов по отладке для пользователей IntelliJ IDEA, о существовании которых вы возможно не знали

Время на прочтение5 мин
Охват и читатели20K

Все мы, разработчики, знакомы с отладчиками и используем их ежедневно - они важная часть процесса программирования. 

Но давайте будем честными. Обычно мы используем только опцию точки останова. При большом желании мы можем использовать условную точку останова.

Но знаете что, отладчик IntelliJ IDEA имеет множество мощных и передовых функций, которые полезны для более эффективной и простой отладки. 

Чтобы помочь вам, мы составили список советов и приемов от наших разработчиков в Lightrun. Мы надеемся, что эти советы помогут вам быстрее находить и устранять ошибки.

Читать далее

Нулевое время простоя при изменениях базы данных с помощью флагов функций — шаг за шагом

Время на прочтение8 мин
Охват и читатели3.1K

Каждый раз, когда мы вносим изменение в схему нашей базы данных, мы также должны вносить изменения в код, который использует эту схему базы данных.

Когда мы добавляем новый столбец в базу данных, нам нужно изменить код, чтобы использовать этот новый столбец.

Когда мы удаляем столбец из базы данных, нам нужно изменить код, чтобы этот столбец больше не использовался.

В этом руководстве мы обсудим, как мы можем координировать изменения кода с изменениями базы данных и развертывать их в нашей производственной среде без простоев. 

Мы шаг за шагом рассмотрим пример сценария использования и воспользуемся флагами функций, помогающими нам выполнить изменения.

Читать далее

Понимание утечек памяти в Java

Время на прочтение11 мин
Охват и читатели58K

Одним из основных преимуществ Java является автоматизированное управление памятью с помощью встроенного сборщика мусора (или сокращенно GC). GC неявно заботится о выделении и освобождении памяти и, таким образом, способен решать большинство проблем, связанных с ее утечкой.

Хотя GC эффективно обрабатывает значительную часть памяти, он не гарантирует надежного решения проблемы с ее утечкой. GC достаточно умен, но не безупречен. Утечки памяти все еще могут закрасться даже в приложения, созданные добросовестным разработчиком.

По-прежнему возможны ситуации, когда приложение создает значительное количество лишних объектов, расходуя ресурсы памяти, что иногда приводит к его полному отказу.

Утечки памяти — это настоящая проблема в Java. В этом руководстве мы рассмотрим, каковы потенциальные причины утечек, как распознавать их в рантайме и как справиться с ними в нашем приложении.

Читать далее

Интеграция с Allure: структурировать, упростить, стабилизировать

Время на прочтение8 мин
Охват и читатели17K

Если ваш проект с автотестами растет, то рано или поздно ставится вопрос о том, как централизованно управляться с этими тестами. Как найти время на поддержку тестовой документации? Как ее структурировать? Где хранить отчеты? Как избавиться от нестабильных тестов и быстро выявить ответственных за них? В Wrike мы смогли ответить на все эти вопросы и автоматизировать процессы, которые они затрагивают. В статье расскажем, как нам это удалось.

Читать далее

А как вы определяете свойства переменными окружения в Spring Boot приложениях?

Время на прочтение2 мин
Охват и читатели15K
image

А что, если я скажу, что подобное

#application.properties
spring.datasource.url=${SPRING_DATASOURCE_URL}?someProperty=${PROPERTY}

содержит ошибку. Не согласны? Разбор под катом.
Читать дальше →