RU

Ставка на API-слой в автотестах: как разгрузить UI и ускорить обратную связь

В этой статье я хочу поделиться личным опытом внедрения API-first подхода в автотестировании Java-приложений. Речь пойдет не о теории тестовой пирамид…

API-firstавтотестытестовая пирамидаAPI testingUI testingJavaRest AssuredJUnit 5QA Automationci-cd
Habr
RU

Black-box тесты на Java: функциональные тесты за секунды и в параллель и почему я остался на своих

Я наткнулся на подход к функциональным тестам, который меня по-настоящему удивил. Тесты в нём вообще не знают, что внутри Spring: стучатся в реально п…

функциональные тестыинтеграционные тестыblack-box тестыSpring BootTestcontainersJaCoCoflaky-тестыпокрытие кодаJavaтестирование
Habr
RU

Page Object Pattern в Selenium на Java: гайд по первому автотестовому проекту

UI‑тесты редко ломаются красиво: один редизайн формы — и локаторы приходится чинить по всему проекту. В статье разберём, как собра…

Page ObjectSeleniumJavaUI-тестыавтотестытестированиелокаторыJUnitSelenium WebDriverархитектура автотестов
Habr
RU

Пять ошибок в работе с ожиданиями в UI‑автотестах, из‑за которых тесты падают через раз

Ваши UI‑автотесты снова «иногда падают», а команда уже привычно лечит это ретраями? Проблема может быть не в CI и не во …

UI-автотестыflaky-тестыSeleniumJavaWebDriverWaitExpectedConditionsтестирование интерфейсовавтоматизация тестированияожидания в тестахстабильность автотестов
Habr
RU

JDK 27 Compact Object Headers: как сбросить до 30% кучи без кроссфита и жестких диет

Каждый Java-объект в HotSpot начинается со служебного заголовка размером 12 байт. В JDK 27 по умолчанию он сжимается до 8 — это JEP 534, финальный шаг…

JavaJVMHotSpotOpenJDKJDK 27JEP 534Compact Object HeadersProject LilliputGCОптимизация памяти
Habr
RU

62 бесплатных урока июня: Java, Docker, LLM, SRE, DWH и другие темы для роста в IT

Карьерный рост в IT редко упирается только в «выучить еще один инструмент». Чаще проблема в другом: понять, какие технологии уже стали рабочей практик…

DockerKubernetesLLMJavakafkadevopsмикросервисыбесплатные урокипрофессиональное развитиеSRE
Habr
RU

Java 21 в стиле «клятый энтерпрайз» на одноплатном компьютере возрастом 13 лет

Можно ли успешно эксплуатировать Java-приложение на Raspberry Pi Model B? А если Java — 21‑я, а Spring Boot, на котором основано приложение — версии 4…

JavaRaspberryDIY с элементами советской эстетикиЭксперимент
Habr
RU

Как я написал E2EE-мессенджер на Spring Boot и WebCrypto — и почему сервер не видит сообщения

Разбор архитектуры E2EE-мессенджера на Spring Boot 3, React и WebCrypto: X3DH, symmetric ratchet, AES-GCM, WebSocket, multi-device и ограничения реали…

APIJavaScriptJavaAndroidStack OverflowGitБезопасностьОпросIDESQLiOSРаботаTorGitHubБазы данныхHRReactDockerMITАлисаRedisQAМессенджер5gПриложениеВзломdevСервер1CPostgreSQLGrafanaСтатьи
Tproger
RU

Как я написал E2EE-мессенджер на Spring Boot и WebCrypto — и почему сервер не видит сообщения

Привет, Хабр. Я Java-разработчик и в основном работаю с backend: Spring Boot, базы данных, интеграции, авторизация, WebSocket — всё то, что обычно нах…

E2EEмессенджерSpring BootX3DHкриптографияWebSocketJavaшифрованиеSignal ProtocolWebCrypto
Habr
RU

Почему Python стал главным помощником Java‑команд

Python уже не просто язык для скриптов и Data Science — в 2026 году он стал «клеем», который связывает микросервисы, тесты и CI/CD…

JavaPythonbackend-разработкаинтеграционное тестированиемикросервисыpytestавтоматизация тестированияtestcontainersOpenAPI