Date | Title | Description |
03.01.2025 | 20 самых распространенных вопросов на собеседовании тестировщика ПО | Тестировщик программного обеспечения — критично важная роль в индустрии IT. Каждое собеседование на эту должность обычно представляет собой комбинацию технических и теоретических вопросов. Ниже описано 15 самых часто задаваемых вопросов с о... |
04.12.2024 | Unit-тестирование — мастхэв? | Unit-тестирование — критически важный этап разработки ПО и камень преткновения для джунов. Начинающие разработчики не всегда понимают, почему тестирование должны делать они, ведь для этого есть специальные отделы. И это отличает крутого спе... |
25.11.2024 | The Rise of DevOps in Russia: A Student's Perspective | DevOps is more than a buzzword. It’s a revolution in how software is developed and delivered. In Russia, this movement is gaining momentum, especially among students and young professionals. As a fourth-year student immersed in this field, ... |
23.11.2024 | Как я стал архитектором и что видел в пути | Всем привет, меня зовут Сергей и я 15 лет работаю в ИТ (на самом деле больше, но так красивее смотрится).
В какой-то момент мне пришла идея расписать свой опыт постепенного превращения в архитектора, в назидание растущим и как инвентаризаци... |
21.11.2024 | Navigating the Waters of API Versioning and Spring Framework Enhancements | In the fast-paced world of software development, APIs are the bridges that connect different systems. As these systems evolve, so do their APIs. This evolution often necessitates a practice known as API versioning. It’s like a river that ch... |
21.11.2024 | Supercharging Microservices with Caching: The FeignClient Revolution | In the fast-paced world of microservices, speed is king. Imagine a bustling city where every second counts. In this landscape, delays can feel like a traffic jam on a Monday morning. Enter FeignClient, a powerful tool designed to streamline... |
21.11.2024 | The Art of Caching and Versioning in Microservices | In the world of microservices, speed and reliability are paramount. Imagine a bustling city where every car represents a service. Some cars zoom by, while others crawl at a snail's pace. The key to transforming sluggish services into speedy... |
20.11.2024 | Кэширование с FeignClient: как ускорить микросервисы и стать героем проекта | Вступление
Привет! Вы когда-нибудь задумывались, почему некоторые запросы в микросервисах ощущаются как поездка на «старой электричке»? Казалось бы, есть FeignClient — мощный и удобный инструмент для общения сервисов, но внезапно задержки р... |
20.11.2024 | Версионирование эндпоинтов — это просто | Команда Spring АйО перевела и адаптировала доклад "Endpoint versioning made simple" Бауке Найхаус (Bouke Nijhuis) с последнего Devoxx Belgium.
В докладе автор объясняет, зачем нужно версионировать API, и подробно сравнивает различ... |
20.11.2024 | DevOps в России: взгляд студента 4-го курса | Всем привет! В этой статье я хочу рассказать вам о направлении DevOps (акроним от англ. development & operations) в текущих реалиях России. В первую очередь, как я это вижу для себя с позиции начинающего специалиста. Эта тема для меня о... |
05.11.2024 | Как я писал суперкастомизированное Android-приложение в 2024 году | Как я писал супер кастомизированное Android приложение в 2024 году
В начале года у меня появилась прикольная идея: сделать Android-приложение, которое будет показывать анимации для алгоритмов сортировки. Чтобы вы сразу поняли, что представл... |
15.10.2024 | Скриншот-тестирование: как заставить тесты «видеть» дефекты | Всем привет, меня зовут Александр Матюшенко, я инженер по автотестированию в одной из платформенных команд в Альфа-Онлайн. Долго откладывал написание этой статьи по разным причинам: начиная от занятости, заканчивая собственной ленью. Но вот... |
04.10.2024 | The API Testing Revolution: Ensuring Stability in a Microservices World | In the fast-paced world of software development, APIs are the lifeblood of applications. They connect disparate systems, enabling seamless communication and functionality. However, with the rise of microservices architecture, the complexity... |
03.10.2024 | Postman: почтальон на страже API | Привет! Меня зовут Бальцер Вадим, я QA-инженер в команде android направления Банки.ру. Сегодня поделюсь нашим опытом внедрения автотестов обратной совместимости и интеграции их в CI.
В материале расскажу:
Зачем нашей команде понадобились ав... |
21.09.2024 | Mastering Splash Screens and Gradle Plugins in Mobile Development | In the world of mobile app development, first impressions matter. The splash screen is the first visual interaction users have with an app. It’s like the cover of a book; it sets the tone and invites users in. A well-designed splash screen ... |
19.09.2024 | Создание плагинов и переиспользуемых частей в .gradle.kts-файлах и Kotlin extension-функциях | Всем привет! На связи Дима Котиков, и мы продолжаем разговор о том, как облегчить себе жизнь и уменьшить Boilerplate в gradle-файлах. В первой части поговорили о том, как подготовиться к созданию модулей для Gradle Convention Plugin. Двигае... |
18.09.2024 | Navigating the Tightrope of Software Releases: A Guide to Backward Compatibility | In the world of software development, releasing updates is akin to walking a tightrope. One misstep can lead to a plunge into chaos. Developers face the dual challenge of introducing exciting new features while ensuring that existing functi... |
17.09.2024 | Релизы без страха: обратная совместимость | Привет, Хабр!
Релиз — это всегда как шаг по канату над пропастью: с одной стороны, нас ждут крутые новые фичи, с другой — опасность сломать то, что уже работает. И все мы знаем, как больно бывает, когда что-то идёт не так.
Сегодня поговорим... |
20.08.2024 | Navigating the Landscape of Java Microservices and Deprecated Code | In the world of software development, Java stands as a titan. Its versatility and robustness make it a go-to choice for building applications. Among its many frameworks, Dropwizard shines brightly for creating microservices. It’s like a Swi... |
20.08.2024 | Почему мы решили перейти с JUnit4 на JUnit5 | Меня зовут Александр Чекунков, я — Android‑разработчик в СБЕРе. Занимаюсь разработкой CSI‑опросов в мобильном приложении «СберБанк Онлайн». Я несу ответственность за функциональность, которую используют бизнес‑команды для оценки удовлетворё... |
17.08.2024 | Создание микросервисов на Java с Dropwizard | Привет, Хабр!
Dropwizard — это комплексный фреймворк, созданный с целью упростить разработку RESTful веб‑сервисов, объединяя в себе множество проверенных временем библиотек и инструментов. В его основе лежат компоненты:
Jetty — легковесный ... |
30.07.2024 | Soft Assertions в AssertJ | 1. Введение
В этой статье мы познакомимся с Soft Assertions в AssertJ, подробно рассмотрим, зачем они нужны и обсудим похожие решения в других фреймворках для тестирования. 2. Мотивация
Для начала поймем, зачем нужны Soft Assertions. Возьме... |
18.07.2024 | Declarative Gradle: рывок или прорыв? | В мире Java разработки (особенно на Spring) большую часть рынка занимают две системы сборки: Gradle и Maven. Maven исповедует более консервативный подход, в котором конфигурация сборки описывается в декларативном pom.xml. Модный молодежный ... |
08.07.2024 | Как стать Java-разработчиком бесплатно? Программа обучения с нуля | Если вбить «как стать java разработчиком» в поисковую строку, можно найти тысячу курсов по данному направлению. Проблема в том, что все курсы являются платными и, как правило, стоят несколько десятков, если не сотен тысяч рублей.
Чтобы разб... |
01.07.2024 | Unit-тесты в Android для начинающего разработчика | Меня зовут Александр Чекунков, я — Android‑разработчик в СБЕРе. Занимаюсь разработкой CSI‑опросов в мобильном приложении «Сбер». Я несу ответственность за функционал, который используют бизнес‑команды для оценки удовлетворённости клиентов.
... |
17.06.2024 | Книга: «Java для опытных разработчиков. 2-е издание»
Прагматичный подход к анализу производительности | Привет, Хаброжители!
Язык Java – сердце корпоративного ПО. Если программист хорошо знает Java, он без особого труда найдет интересную работу. Поднимите ваши навыки Java на новый уровень вместе с экспертами. Основательно изучите такие мощные... |
01.06.2024 | Методы тестирования веб-API, которые должен знать каждый: чек-листы для начинающих | Тестирование веб-API нужно, чтобы обеспечить надёжность взаимодействий и обработки данных в приложениях. Ошибки в API могут вызвать сбои и уязвимости, поэтому проверка аутентификации, авторизации и шифрования критична. Качественно протестир... |
21.05.2024 | Гайд по использованию JUnit 5, Mockito и AssertJ для проверки поведения кода | Меня зовут Игорь Симаков, я тимлид Java-разработки в команде Маркетплейс Банки.Ру. Сегодня на практическом примере разберу использование UNIT-тестирования. Оно применяется как для тестирования состояния, так и для проверки поведения кода. В... |
18.05.2024 | Комбинированная авторизация в Spring Security: Социальные сети и логин через username/password | Привет! Меня зовут Данекер, я Fullstack-разработчик (Java, Angular). Несмотря на то, что уже работаю в компании, я продолжаю находить время для собственных проектов, через которые изучаю интересующие меня технологии и подходы. В рамках одно... |
20.04.2024 | Тестирование UI в Compose Multiplatform | Собираясь писать UI-тесты для приложения на Compose Multiplatform, я столкнулась с дефицитом туториалов и документации по этой теме. Из полезного были только пара статей и выступлений на недавних конференциях, а примеры в основном сводились... |
04.04.2024 | Как протестировать Android-приложение, которому требуются разрешения | Часто для корректной работы приложению нужен доступ к определенным функциям мобильного устройства: к камере, записи голоса, совершению звонков, отправке SMS-сообщений и т. д. Приложение может получить доступ к ним и использовать только в то... |
04.04.2024 | Backend-разработчик: из стажера в джуны | Всем привет! Меня зовут Егор, я стажёр backend-разработчик в зарплатном проекте Росбанка (он же Payroll). В этой статье я расскажу про путь становления от «зеленого» стажера до боевой единицы в команде: через что мне пришлось пройти, с каки... |
25.03.2024 | Ловушки интеграционного тестирования в Spring Boot | Некоторые экземпляры из коллекции проблем, с которыми часто сталкивается разработчик в мире тестирования микросервисов.Вступление — пирамида тестирования, микросервисы и ипотека
В современном IT микросервисная архитектура стала нормой. У не... |
24.03.2024 | Современный способ организации зависимостей в Android. Version catalog и Gradle convention plugin | Я — Денис, Middle Android-разработчик в «Лайв Тайпинге». В этой статье я расскажу о современном подходе организации зависимостей в Android. Вы узнаете как использовать version catalog и convention plugin в вашем проекте. История организации... |
19.03.2024 | Android TOML. Просто о каталогах зависимостей в Android Studio | Всем привет!
Меня зовут Евгений и я Android-разработчик. Сегодня хотел бы поделиться своими знаниями и наблюдениями относительно нового способа добавления зависимостей в проекты, созданные на базе Android Studio.Предисловие
29.02.2024 вышла... |
18.03.2024 | Разработка под Android в 2024 году | Эта статья отражает моё личное мнение и профессиональные взгляды, учитывающие различные точки зрения в сообществе Android-разработчиков. Кроме того, я регулярно просматриваю руководства от Google для Android.
Важно подчеркнуть: некоторые хо... |
09.03.2024 | Стать QA инженером в 2024 году и начать зарабатывать первые деньги? | Между багами и кодом. Почему тестирование не проще программирования
Современный мир - это быстрое развитие технологий, требующее от тестировщика постоянного обучения и адаптации к новым методам и инструментам тестирования. С ростом популярн... |
07.03.2024 | Java Digest # 10 | Всем привет! 👋 👋 👋 Мы — Java-разработчики Тинькофф: Андрей Орлов, Арсений Зайцев, Константин Максимов, и Константин Польщиков. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и решили делиться этим ... |
12.12.2023 | Mockito и как им пользоваться | Привет, Хабр!
герой нашей статьи
Помню, как в одном из моих первых проектов, мы столкнулись с проблемой тестирования кода, который зависел от внешних сервисов и баз данных. Это было не только трудоемко, но и занимало уйму времени. И сразу с... |
15.11.2023 | JUnit 5 Extensions — практическое руководство (часть 1) | Привет. В Рунете материала по JUnit 5 Extensions сегодня немного, и довольно часто он ограничивается переводом документации (в редких случаях - постов с зарубежный ресурсов). Поэтому было решено исправить сей недостаток.
В небольшом цикле с... |
14.11.2023 | Как подружить JUnit 5 и Robolectric? | Задавались ли вы вопросом, почему Robolectric не работает JUnit 5? В этой статье я расскажу, как можно подружить Robolectric и JUnit 5 и как мы смогли это сделать в Альфа-Банке.
Вы узнаете, как запустить JUnit 4 тесты при совместном исполь... |
08.11.2023 | Как перейти из ручного тестирования в автоматизированное | Процесс погружения в автоматизацию волнует и начинающих специалистов, и опытных инженеров по тестированию. Одни считают, что автоматизация не их конёк, другие — что это трудозатратный процесс, который стоит отложить. В этой статье расскажем... |
18.10.2023 | Part 1. Инструменты автоматизации тестирования | Привет! Я Вадим Лунин, QA Manager в Альфа Банке в Беларуси. С 2022 года я работаю в банке и одно из моих направлений работы - выбор инструментов тестирования. Не так давно я написал статью “Part 0. Инструментарий QA в Альфа Банке”, в которо... |
11.10.2023 | Part 0. Инструментарий QA в Альфа Банке | Всем привет! Меня зовут Вадим Лунин. Я — QA Manager из Альфа Банка в Беларуси. Этой статьёй хочу начать цикл статей по инструментам, которые мы используем для тестирования наших продуктов в Альфа Банке.
Три месяца назад мы запустили Альфа С... |
17.07.2023 | Gradle для тестировщика | Всем привет. Меня зовут Ирек, и я в профессиональном IT с 2012 года. Прошел путь от специалиста службы поддержки до разработчика. На данный момент занимаюсь автоматизацией тестирования в компании РТК ИТ.
В статье хочу рассказать о полезных ... |
04.04.2023 | Как эффективно тестировать мобильные приложения? Пятиуровневая пирамида тестирования | Тестирование, вероятно, является одной из самых горячих тем в разработке программного обеспечения. Все согласны с необходимостью качественного тестирования и определенного количества тестов (или покрытия кода). Но каков масштаб, цель и зада... |
15.03.2023 | Процесс ELT: основные компоненты, преимущества и инструменты создания | Если ваша задача заключается в аналитике данных или в машинном обучении, то успех её выполнения зависит от создаваемых вами конвейеров данных и способов их создания. Но даже для опытных дата-инженеров проектирование нового конвейера данных ... |
07.03.2023 | Обзорная статья о видах тестирования IT-продуктов | На курсе, где я учился frontend-разработке, нас познакомили только с unit тестированием. Но уже на первом месте работы, я столкнулся и с регрессионным тестированием, и с автотестами, и с E2E-тестами. Мне было сложно понять, чем они отличают... |
08.02.2023 | Как тестировать в Databricks: Nutter Framework | Disclaimer
Статья предполает, что вы знаете что такое Databricks, что такое ноутбуки, кластера и джобы (воркфлоус) в нём. Поиск по хабру предлагает вот эту статью для ознакомления.Вступление
Я продолжаю серию статей, где анализирую свой тек... |
02.12.2022 | Как провести эффективное тестирование мобильных приложений? Стратегия пятиуровневой пирамиды тестов | Никто не спорит с тем фактом, что в процессе разработки необходимо проводить качественное тестирование, которое обеспечит достаточное тестовое покрытие. Но какова область и цель тестов? В какой среде их нужно проводить и как быть с зависимо... |
28.10.2022 | Как кастомизировать UI артефакты для Selenide + Selenoid + Allure (with TestOPS) | На заре формирования команды, в которой работаю, было решено использовать JVM-стек для реализации UI-автотестов, а именно:
Kotlin — язык разработки;
JUnit5 — ядро проектирования автотестов;
Selenide — основа взаимодействия с DOM-моделью б... |
05.10.2022 | Удобный бенчмаркинг с Jetpack Benchmark Library. Макро- и микробенчмарки | На ранней стадии разработки мы, Android-разработчики, не спешим задумываться об оптимизации производительности будущего приложения. Этому есть объяснение: преждевременная оптимизация невыгодна бизнесу на первых порах, когда в приоритете выс... |
04.10.2022 | Kotlin. Автоматизация тестирования (Часть 3). Расширения Kotest и Spring Test | Продолжаем автоматизировать функциональные тесты на Kotlin и знакомиться с возможностями фреймворка Kotest
Расскажу про расширения Kotest:
Что это такое
Как расширения помогают писать тесты
Реализацию запуска расширений в Kotest
Некоторые в... |
07.09.2022 | Четыре важных теста для Apache Kafka CI/CD с GitHub Actions | Если вы используете GitHub для создания приложений Apache Kafka® (а на GitHub больше 70 тыс. репозиториев, относящихся к Kafka), наверняка вы захотите интегрировать Kafka в свою среду разработки и эксплуатации GitOps. Эта статья для тех, кт... |
26.08.2022 | Введение в DbChange JUnit расширение | Простой и декларативный способ выполнять sql запросы в JUnit тестах.Введение
Структура JUnit теста следует модели тестового сценария (test case):
ПредУсловия (PreConditions) - это действия, которые переводят тестируемую систему в определённ... |
19.07.2022 | Gradle и нетривиальная конфигурация | Каждый из нас знакомился с новомодными библиотеками, фреймворками, инструментами по getting started статьям из документации. В них всё складывается как по полочкам, в пёстрых красках показывается как всё просто и легко. Однако зачастую карт... |
15.06.2022 | Неустаревающие книги? | Некоторым из этих книг уже очень много лет. Главная книга о паттернах — Design Patterns — увидела свет в 1994-м году, значит, ей уже почти тридцать. По сравнению с ней, Clean Architecture, вышедшая десять лет назад — практически, ребёнок!
Н... |
13.06.2022 | Создание клона IMDB с Java бэкендом на SparkJava и Neo4j | Мы решили создать курс для Java Backend и хотим обсудить некоторые аспекты и выбранные альтернативы, которые мы заметили при его создании.
Курс по разработке приложений шаг за шагом описывает внедрение конечных точек, начиная с тестовых наб... |
09.06.2022 | Ускоряем разработку | Любая работа java-программиста опирается на базис, под которым подразумевается не только непосредственно знание самого языка программирования, но также и знание дополнительных компонентов, без которых программирование в чистом виде, станови... |
21.12.2021 | Миграция Spring Boot приложения на Java 17 — сложный путь | Недавно была выпущена Java 17, и я очень рад появлению множества улучшений и новых функций. Вместо того, чтобы начинать с нового или недавнего проекта (где в этом азарт?), мы собираемся обновить существующее приложение Spring Boot, пока мы ... |
30.11.2021 | Инструменты разработчика для тестирования Android-приложений | В командной разработке тесты – это, как правило, задача QA- и SDET-специалистов. Вместе с тем навыки тестирования полезны и разработчикам, позволяя им проверить свои приложения и повысить стабильность их работы.
Эта статья предназначена в п... |
26.11.2021 | Примеры утверждений JUnit 5 | Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
Утверждения (Assertions) JUnit 5 помогают сравнить ожидаемый результат с фактическим результатом теста. Для простоты все утверждения JUnit Jupiter являются статическими мето... |
24.11.2021 | Туториал по JUnit 5 - Аннотация @RepeatedTest | Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
Аннотация @RepeatedTest используется для написания повторяющихся тестовых шаблонов, которые могут выполняться несколько раз в JUnit. Частоту повторения можно настроить как п... |
24.11.2021 | Туториал по JUnit 5 - Аннотация @ParameterizedTest | Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
Оглавление
Настройка
Аннотация @ParameterizedTest
Источники тестовых аргументов
Параметризованные тесты с несколькими аргументами.
Вывод1. Настройка
Включите зависимость jun... |
24.11.2021 | Туториал по JUnit 5 - Аннотация @Disabled | Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
Аннотацию JUnit 5 @Disabled можно использовать для исключения методов тестирования из набора тестов. Эта аннотация может применяться как к классу тестирования, так и к отдел... |
24.11.2021 | Ожидаемое исключение JUnit 5 | Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
В JUnit 5, чтобы написать тестовый код, который, как ожидается, вызовет исключение, мы должны использовать Assertions.assertThrows().
В данном примере ожидается, что тестовы... |
23.11.2021 | Туториал по JUnit 5 - Аннотация @BeforeEach | Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
Аннотация @BeforeEach используется для обозначения того, что аннотированный метод должен выполняться перед каждым методом @Test, @RepeatedTest, @ParameterizedTest, или @Test... |
23.11.2021 | Туториал по JUnit 5 - Аннотация @BeforeAll | Аннотация JUnit 5 помечает @BeforeAll метод, являющийся методом жизненного цикла JUnit 5 теста. @BeforeAll - это замена аннотации @BeforeClass в JUnit 4.
Это продолжение туториала по JUnit 5. Введение опубликовано здесь.1. Аннотация @Before... |
22.11.2021 | Туториал по JUnit 5 - Жизненный цикл JUnit 5 теста | Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
В JUnit 5 жизненный цикл теста управляется четырьмя основными аннотациями, то есть @BeforeAll, @BeforeEach, @AfterEach и @AfterAll. Вместе с тем, каждый тестовый метод долже... |
22.11.2021 | Туториал по JUnit 5 - Введение | Три дня назад мной был опубликован перевод: JUnit — создание отчетов в формате HTML
В комментарии к нему @LeshaRB задал вопрос: "Это будет перевод всех статей цикла Junit5 - https://howtodoinjava.com/junit5/ или просто одна?"
В ка... |
12.10.2021 | Оценка событий JDK Flight Recorder с помощью JfrUnit | Гуннар Морлинг, разработчик программного обеспечения с открытым исходным кодом в Red Hat, представил JfrUnit, новую утилиту тестирования, которую можно использовать для обнаружения снижения производительности с JUnit или Spock Framework. Ин... |
11.08.2021 | Параллельное тестирование с JUnit 5 и Selenium [Учебное пособие] | Параллельное выполнение тестов с Selenium является одним из основных факторов, способных повлиять на скорость их выполнения. Последовательное выполнение в автоматизированном тестировании Selenium будет эффективным только тогда, когда тесты ... |
05.01.2021 | Key OSS Projects Standardizing on Gradle Enterprise | Gradle Enterprise is quickly emerging as a staple for build and test data analytics and as a source of acceleration technology for both Gradle and Maven-based builds The fact that important OSS projects have embraced Gradle Enterprise provi... |
07.10.2012 | 5 Ways To Manage App Development On The Android Platform Without Going Nuts | The fractured state of the Android platform can make it difficult to manage app development. Testing can be a bear but cloud-based services are providing new ways for developers to quickly see how their apps look on any type of device.
In i... |
13.08.2008 | 12 Unit Testing Tips for Software Engineers | Unit Testing is
one of the pillars of Agile Software Development. First introduced by Kent Beck, unit testing has found its way into
the hearts and systems of many organizations. Unit tests help engineers reduce the number of bugs, hours sp... |
- | Быстрый старт: гайд по автоматизированному тестированию для Android-разработчика. JVM | Привет! Меня зовут Сергей Иванов, я ведущий разработчик Android в Redmadrobot. С 2016 использую автотесты различных категорий и успел в этом набить немало шишек. Именно поэтому решил поделиться опытом. Возможно, что кому-то статья поможет с... |
- | Плагин для ранжирования кода по важности или как я пыталась облегчить жизнь программистам | Обычно в кодовой базе крупных проектов есть более и менее важные фрагменты. Бывают ситуации, когда разработчику необходимо знать, какие части кода важнее других. Например, если на улучшение проекта дается фиксированное время или нужно выясн... |
- | Идеальный пайплайн в вакууме | Даже не зовите меня, если ваш pipeline не похож на это.
На собеседованиях на позицию, предполагающую понимание DevOps, я люблю задавать кандидатам такой вопрос (а иногда его еще задают и мне):
Каким, по вашему мнению, должен быть идеальный ... |