Тестируем на Java, C#, JavaScript, Python: программа конференции Heisenbug
Трудно представить в одном месте Java, .NET, JavaScript, Python-тестировщиков и разработчиков, если это не standup Agile-тренинг. Но нет, в этой статье речь пойдет совсем не про аджайл, а про навыки и опыт, которые можно получить на Heisenbug. Кто будет ими делиться?
- «Uncle Bob», автор книги Clean Code;
- Josh Long, Spring Developer Advocate и Java Champion, автор многих обучающих видео и книг;
- Андрей Акиньшин, разработчик Rider и автор книги «Pro .NET Benchmarking»;
- Андрей Лушников, разработчик Puppeteer и Playwright;
- Артем Ерошенко, разработчик Allure;
- Иван Крутов, разработчик Selenoid;
- сообщество перформанс-инженеров.
На самом деле этот список можно продолжать и продолжать. Доклады будут разного уровня сложности: выбор есть как для матерого инженера, так и для начинающего. Вы точно сможете составить персональную двухдневную программу по нетворкингу и прокачки скилов на 8–9 апреля.
Программный комитет всегда читает ваши отзывы. Кстати, Барух Садогурский (jbaruch) делится некоторыми из них в своем твиттере.
На самом деле среди них часто попадаются: «Хочу больше прикладных вещей». Конечно, формулировка не всегда такая лаконичная. Но идея в целом понятна. Поэтому в этот раз помимо докладов можно будет посетить несколько воркшопов, которые включены в стоимость билета.
Воркшопы
Артем Ерошенко выступал с докладом «Визуализация покрытия тестов» в прошлом году на конференции Heisenbug 2019 Moscow. Этот доклад получил большой отклик в сердцах всех причастных к тестированию и измерению покрытия тестов. Если вы еще не смотрели доклад или у вас есть боль с настройкой, то приходите на воркшоп Артема. Он расскажет, покажет и поможет вам справиться с этой задачей.
Второй воркшоп будет проводить Сергей Махетов, который тоже был спикером на конференции Heisenbug. Название воркшопа довольно длинное, но позволяет точно понять, чего можно ожидать от воркшопа: «Исследуем возможности Postman, или Как некоторые трюки и приемы сделают тестирование приятнее и эффективнее».
Кейноуты
Открывать конференцию будет Josh Long с докладом «Bootiful testing». Если вы думаете, что там будет что-то жесткое и совсем непонятное, то это не так. Джош расскажет, как можно тестировать приложения, использующие Spring. За один час можно будет увидеть, как тестировать компоненты, писать моки, контрактные тесты и использовать все преимущества фреймворка для тестирования веб-приложений.
Один из закрывающих докладов — «Clean code — Functions», который приехал рассказать Robert «Uncle Bob» Martin, известный многим по книге «Clean Code». Он также является автором и других книг («The Clean Coder», «Clean Agile», «Clean Architecture») и соавтором Agile Manifesto. В своем докладе «дядюшка Боб» расскажет, почему так важно писать чистый код и какие техники для этого можно применять. А после выступления к нему можно будет подойти и подписать книгу!
Подходы в разработке и тестировании
Впрочем, не только «дядюшка Боб» будет рассказывать о том, какие подходы можно использовать. С похожей темой выступит и Adam Tornhill, который сделает упор на частые ошибки в больших проектах и расскажет, что с этим делать. Кстати, о больших проектах: Вы знали, что Intellij IDEA содержит более 270 000 комитов? С трудом представляю, сколько людей и как ее тестируют, ведь в ней довольно навороченный интерфейс, постоянно появляются новые фичи и интеграции. Юрий Артамонов (jreznot) из компании JetBrains как раз поделится этим опытом. Кстати, не так давно он релизил плагин QA Lithuim для упрощения работы с селекторами в IDE.
Оказывается, для тестирования десктоп-приложений можно тоже использовать селекторы!
Когда речь идет о селекторах, невольно вспоминается Selenium. Докладов о том, как его готовить, было уже довольно много. Но одно из жарких мест — мигающие тесты (или flaky tests). Все воюют с ними по-разному. Анна Чернышова с своей командой подошли к этому вопросу серьезно и воспользовались силой ML. Она расскажет про open source-инструмент, который они написали, и объяснит, как его можно использовать в своих веб- и мобильных проектах.
С другой стороны этот вопрос рассмотрит Yorgos Saslis. Падающие тесты очень пагубно влияют на CI-пайплайн и настроение команды продукт. Как разбираются с этим в RedHat, можно будет узнать из его доклада.
Инфраструктура
Немаловажная тема о том, как настраивать окружения для тестов, как ими управлять. С помощью правильно настроенной инфраструктуры можно ускорить тесты и обеспечить их стабильность в том числе. О способе использования Chrome Developers Tools-протоколе в кластере Kubernetes расскажет Иван Крутов, разработчик Selenoid.
Тестировать инфраструктуру тоже необходимо! Своим опытом поделиться Андрей Сербин. Расскажет, с помощью каких инструментов это можно делать и когда это оправданно и необходимо.
В компании Avito тестируют не только инфраструктуру, но и Kubernetes-операторы! Михаил Шавердо в своем докладе будет делиться таким опытом, а также покажет, как создать и протестировать мультикластерное приложение.
Тестирование безопасности
Не так много существует вакансий по тестированию безопасности, но тем не менее эта тема очень интересна для изучения. На конференции будут Алексей Дремин и Александра Сватикова из этой области:
- покажут топ-10 уязвимостей и научат пользоваться инструментами для их выявления;
- расскажут про тестирование безопасности в Android-приложениях при обмене сообщениями.
Эти доклады адаптированы и для тех, кто не занимается тестированием безопасности, так что есть возможность приобрести новые навыки.
Тестирование производительности
Первое, что нужно отметить: на конференции будет представлено сообщество нагрузочных тестировщиков, которые будут делать мини-доклады на стенде и отвечать на ваши вопросы, помогать вам разобраться в тестировании производительности в течение всей конференции.
Одним из представителей этого сообщества является Вячеслав Смирнов, который еще и приготовил «доклад-сборник рецептов» по использованию Grafana и InfluxDB. За 60 минут можно будет узнать на примерах, как правильно анализировать результаты нагрузочных тестов.
С не менее подробным и детальным докладом будет выступать Андрей Акиньшин (DreamWalker), который тоже затронет тему анализа результатов, а еще объяснит, как применять статические тесты, писать перформансные тесты и почему важно выбирать правильные метрики. Андрей является автором книги «Pro .NET Benchmarking» и занимается задачами микрооптимизаций продолжительное время, разрабатывает проект BenchmarkDotNet и Rider, поэтому я очень рекомендую посетить его доклад.
Тестирование нагрузки можно измерить не только на бэкенде, но на фронтенде. В своем докладе Ольга Кукса покажет, как можно измерить производительность на клиентской стороне, и затронет вопрос интеграционных тестов.
А про тестирование производительности в мобильных приложениях раскроет завесу Максим Михарев из компании Wrike. Он поделится своими техниками написания тестов и использования Xcode Memory Graph Debugger, Memory Leaks, Time profiler и других инструментов Xcode.
Большая редкость на конференции — это доклады про разработку игр. Они каждый раз попадают в топ-10 докладов. На этот раз Константин Чупров будет рассказывать, почему тестирование производительности игр совсем не похоже на тестирование веб-приложений. Как сжечьне сжечь видеокарту пользователя? Зачем покупать устаревшие компьютеры на барахолках? Как сделать так, чтобы игра лагала незаметно для игрока? Константин всё объяснит.
Тестирование бэкенда
Для тех, кто больше занимается автоматизацией бэкенд-части (или API) или хочет разобраться в этом:
- Sven Ruppert из JFrog расскажет, как можно создать кастомный JUnit 5-движок и главное, зачем;
- Sebastian Daschner с лайв-демо научит писать интеграционные и компонентные тесты на Java;
- Анатолий Коровин объяснит, как готовить тестовые данные;
- Виктор Орловский расскажет про контрактное и приемочное тестирование.
Тестирование фронтенда
Мы знаем, что многие из вас занимаются тестированием фронтенда или написанием end-to-end-тестов, поэтому для вас есть доклады про:
Тестирование мобильных приложений
Если смотреть на статистику посещаемости сайтов, то все больше и больше людей заходят на них со своих гаджетов. Так что тестировать мобильные версии веб-сайтов и приложения становится всё важнее и важнее. Если вы интересуетесь этой темой, то ловите список докладов:
А что еще?
На конференции помимо докладов приветствуется живое общение и дискуссии. Для этого существуют и дискуссионные зоны, доступные после каждого доклада, и BOF-сессии.
В этот раз будет две темы, на русском и на английском:
- Сколько багов в опен-сорс инструментах по тестированию? (RU)
- How many tools I need to make and test software? (EN)
Помимо этого утром второго дня можно будет прийти на тематический завтрак «AI в тестировании и IT — хайп из ничего?!», где гости и программный комитет обсудят эту тему.
Составили уже список докладов для себя? Ждем вас 8–9 апреля в Санкт-Петербурге на конференции Heisenbug!