Обзор программы Heisenbug 2021 Moscow: инструменты, воркшопы, экзоскелеты +15


Конференция по тестированию Heisenbug грядет: до старта осталось меньше месяца. В программу вносят последние штрихи, поэтому уже можем рассказать Хабру, какие доклады в неё попали.

Будут полюбившиеся зрителям спикеры, работающие над популярными инструментами: Артем Ерошенко (автор Allure Framework), Андрей Лушников (занимается Playwright), Олег Ненашев (из команды Jenkins).

Будут и совершенно новые темы. Например, впервые на Heisenbug поговорят о тестировании Flutter-приложений и умных девайсов. Более того, речь зайдёт даже о беспилотных автомобилях и экзоскелетах!

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

Для хабрапоста мы разбили полный список докладов на тематические блоки —  так что можете выбрать интересное вам и перейти к нему.


Воркшопы

Воркшоп. Без протечек и засоров: тестируем Jenkins Pipeline

Олег Ненашев

CloudBees

Олег Ненашев состоит в core team проекта Jenkins, и его Jenkins-деятельность связана не только с кодом: он организует митапы, давно выступает на конференциях (в том числе и Heisenbug).

В этом воркшопе Олег познакомит зрителей с Groovy DSL и Shared Pipeline Libraries и научит создавать очень надежные пайплайны. Олег поговорит о статическом анализе Pipeline, юнит- и интеграционном тестировании, и о CI/CD для Jenkins Pipeline… с помощью Jenkins Pipeline.

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


Воркшоп: как оценить качество тестов на Cypress и сделать их быстрее при помощи Drill4J

Роман Давлятшин

EPAM

Роман — JavaScript-разработчик с опытом разработки фронтенда и бэкенда на всевозможных библиотеках и фреймворках. Любит экспериментировать, копаться в коде и разбираться в новых вещах. Сейчас работает в EPAM, в составе команды Drill4J.

В этом воркшопе вы узнаете, как Drill4J поможет выкарабкаться из пучины проблем, когда приложение обрастает миллионом тест-кейсов, коммуникация между разработчиками и тестировщиками разваливается, а легаси-тесты крутятся впустую. Роман развернет пример проекта на Cypress+React, определит существующие и «потенциальные» узкие места, и покажет, как решить их при помощи Drill4J.


Воркшоп. Пересмотр подхода к тестам на примере React Web App

Максим Забунков

Deutsche Bank Tech Center

Максим начал свой путь в 2005 году С++ разработчиком, затем переключился на C#.NET и вскоре стал частью команды Deutsche Bank Tech Center. Сейчас возглавляет небольшую кросспроектную команду автоматизации и тулинга для Web UI Test Automation. Во время этого воркшопа Максим ответит на следующие вопросы:

  • Почему стоит начинать именно с компонентных тестов?

  • Почему команды перестали писать юнит-тесты на React-controls, redux reducers и на сервисы?

Практичный доклад про shift left на примере компонентных тестов, который будет интересен любителям shift left, интересующимся и практикующим автотесты, а также фронтенд-инженерам.


Воркшоп. Selenide на Python за 2 часа

Яков Крамаренко

Automician

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

Воркшоп Якова станет настоящей live coding-эквилибристикой: он покажет, как отсеять лишнее и сделать самое основное за минимальное время, какие фишки языка для этого применить и сделать в меру сложное, но ёмкое решение. 

Будет интересен инженерам, которые хотят, но ещё не начали писать свои инструменты, тем, кто уже что-либо писал, любителям Python, а также тем, кто хочет заглянуть вглубь реализации подобных решений.


Workshop. Improving your integration testing efforts with consumer-driven contract testing

Bas Dijkstra

On Test Automation 

Бас Дейкстра — консультант по автоматизации тестирования с 15-летним опытом повышения эффективности тестирования за счет разумного использования инструментов. Бас — опытный корпоративный тренер и успешно провел множество курсов по автоматизации тестирования для компаний в Нидерландах и за рубежом, получив отличные отзывы. Частый спикер на конференциях.

Контрактное тестирование — подход, предназначенный для решения проблем крупномасштабной интеграции и тестирования E2E в распределенных средах. Эта техника существует уже несколько лет, но примеров использования, которые четко показывают дополнительные преимущества контрактного тестирования и того, как оно может помочь ускорить интеграционное тестирование, очень мало.

Этот воркшоп призван решить эту проблему. В качестве инструмента для тестирования контрактов Бас будет использовать Pact. Он привязан к Java, но будут упражнения и примеры и для других языков. Ведь речь пойдет о принципах и паттернах, а не об инструментах и трюках.


Воркшоп. Fullstack QA: разбираемся в зоопарке тестов

Артем Ерошенко

Qameta Software

Считается, что тестировщикам нужно писать только E2E-тесты. Но правильно ли в эпоху DevOps, Docker, TestOps и CI/CD не пользоваться инфраструктурой и опытом коллег по цеху?

Пришло время обновить старый арсенал подходов и инструментов, и на воркшопе Артем поднимет простое приложение на Java+TS и покроет его набором разнообразных тестов. Вместе с Артемом зрители смогут:

  • протестировать API;

  • написать тесты на БД и посмотреть, что может пойти не так;

  • разобраться с тем, как мокать внешние зависимости;

  • посчитать, сколько ресурсов потребует запуск E2E-тестов.

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


Mobile

UI-автоматизация тестирования мобильных приложений и интеграция их в CI-процесс

Михаил Мирошниченко

Wolt   

Михаил занимается тестированием разнообразных продуктов вот уже 15 лет. Восемь лет занимается мобильной разработкой. Работал в Яндексе и Докторе Вебе, сейчас трудится в Wolt — самом популярном сервисе доставки в Европе.

Мобильная автоматизация, особенно на iOS, до сих пор считается чем-то сложным, особенно в проектах, где ее нет. Михаил расскажет, как начать автоматизацию, когда нет ни собственно автоматизации, ни девайсов. Плюсом будет кроссплатформенность доклада (iOS + Android) и использование средств GitHub.

Доклад будет интересен QA-инженерам, которые планируют использовать автоматизацию тестирования, но пока не знают, с чего начать и что использовать. Разработчики и DevOps-инженеры узнают, как могут помочь QA-инженерам в автоматизации и в тестировании.  Слушатели также увидят (и смогут забрать себе) способы построения эффективного фреймворка автоматизации, который сделает тестирование понятным для всей команды, а расширение его на другие продукты — быстрым и безопасным. И, конечно, узнают (и смогут позаимствовать) простые в использовании средства генерации отчетов о тестировании и отправки уведомлений в Slack.


Системный подход к стабилизации тестов для мобильных приложений

Надежда Дегтярева

Badoo

Дмитрий Макаренко

Badoo

Дмитрий — mobile QA в Badoo, где занимается как ручным тестированием, так и автоматизацией тестов для Android и iOS-приложений. Надежда — senior QA-инженер в Badoo. Вместе они поделятся системным подходом к анализу flaky-тестов, вызванных разными причинами, и расскажут, как не допускать появления flaky-тестов. Доклад поможет сократить время на анализ flaky-тестов, чтобы ускорить доставку новой функциональности и иметь больше времени на улучшение фреймворка.

Борьба с ненадёжными тестами — переходи на мобильный уровень!


Нативные автотесты кроссплатформенного Flutter

Мария Лещинская

Surf

Мария — QA-специалист в Surf, где одними из первых в России стали использовать Flutter, так что накопили немало экспертизы.

О тестировании кроссплатформенных приложений Flutter информации мало, а так как Flutter набирает обороты в мобильном мире, то тестировать «правильно» становится все более важно. Об этом и пойдет речь в докладе. Мария расскажет о коммерческом опыте работы с нативными автотестами на Flutter. Стабильный пакет для работы с e2e и widget-тестами включен во Flutter-фреймворк с 2 декабря 2020 года, а поэтому это уникальная возможность услышать со стороны, каково это — писать автотесты под Flutter на Dart.

Доклад будет полезен инженерам, планирующим работать или уже работающим с Flutter-приложениями. 


Hardware

Как преодолеть пропасть от прототипа до рынка, разрабатывая экзоскелеты

Михаил Крундышев

ExoAtl

Чего стоит создание рынка с нуля и как вера в свое детище помогает справляться с трудностями, расскажет со-основатель ExoAtlet — уникального российского проекта, вышедшего на мировой рынок — Михаил Крундышев.  

«Когда-нибудь люди, прикованные к инвалидным креслам, смогут выбросить их, встать на ноги и гулять по паркам в электрических экзоскелетах». Хорошая мечта, правда? Но можно мечтать на эту тему, а можно разрабатывать, производить и продавать медицинские экзоскелеты прямо здесь и сейчас, как Михаил.

Доклад будет полезен всем, кто доводит свои проекты от замысла до воплощения. Вы сможете узнать, как это делают на других проектах.


Connected cars: как устроены бортовые компьютеры в авто и как их тестируют

Александр Петров

Ситимобил

С каждым годом автомобили становятся софтверно сложнее и переходят в категорию connected-устройств. В них есть голосовые ассистенты, картография, различные сервисы, а главное, они могут получать данные от автомобиля. Сегодня все крупные корпорации строят экосистемы не только с помощью классических приложений, но и с помощью connected-устройств. Automotive-решения — одно из них.

Александр Петров более 10 лет работает в области обеспечения качества ПО. За это время был в роли ручного тестировщика веб- и мобильных приложений, писал автотесты на API и Android. В своем докладе он расскажет о том, какие automotive-решения бывают, как они устроены и как их тестировать.


Разработка all-in-one тестовой станции для производства

Александр Фомин

СберДевайсы

Александр Гришин

СберДевайсы

У Александра Фомина и Александра Гришина свыше 15 лет в QA на двоих. Они участвовали в запуске других умных девайсов и программно-аппаратных комплексов: Яндекс.Станции, автоматизации тестирования промышленных геодезических GPS приемников и систем для авторуления сельскохозяйственной техникой на полях.

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

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


Тестирование умных устройств от прототипа до производства

Роман Курочкин

SberDevices 

Олег Ломанов

SberDevices 

Умные устройства уже как несколько лет являются неотъемлемой частью нашей жизни. Однако на рынке СНГ не так много компаний, которые разрабатывают их. Еще меньше тех, кто рассказывает про нюансы тестирования на каждом из этапов — от прототипа до массового производства.

Роман Курочкин начинал со стажировки в Яндекс.станции. Сейчас исполняет роль «играющего тренера». Занимался обеспечением качества SberPortal и OkkoSmartBox.

Олег Ломанов — QA инженер, отвечающий за качество продукта. Занимался обеспечением качества на продуктах SberBox и SberBox Top. 

Доклад будет полезен:

  • опытным тестировщикам, которые никогда раньше не задумывались о HW-тестировании;

  • профильным инженерам, которые не задумывались о том, что их знания про устройство WI-FI, HDMI и электронных компонентов очень пригодятся при разработке умных девайсов;

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


Испытательная площадка беспилотных транспортных средств

Любомир Матвеев

Яндекс

Любомир шесть лет в тестировании, до Яндекса работал в мобильном геймдеве и прошёл путь от простого тестировщика до руководителя отдела. Руководит группой тестирования беспилотных автомобилей на испытательном полигоне. В беспилотниках уже 2 года, за это время успел побывать ответственным за крупные московские локации.

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


JavaScript/TypeScript

Introducing Playwright test runner

Андрей Лушников

Microsoft

Андрей Лушников, главный инженер Microsoft, бывший инженер Chrome DevTools и технический руководитель Chrome Puppeteer с более чем 11-летним опытом работы в области разработки ПО. Сегодня Андрей является членом основной команды Playwright и в своем докладе расскажет про этот инструмент, который предназначен для тестирования Node.js. 

Андрей расскажет о фикстурах, которые делают конфигурацию тестов простой и гибкой, покажет, как делать тесты, управляемые данными, и как управлять артефактами тестирования — скриншотами и видео. Послушав этот доклад, вы будете четко понимать, что такое Playwright Test и как его использовать.


Protractor endgame

Евгений Лайченков

Software Test Engineer

Евгений более шести лет работает Software Test. Любит тестирование, JavaScript и опенсорс. Ведет еженедельный дайджест по автоматизации тестирования на английском и русском языках для DOU.

Мир JavaScript-инструментов постоянно изменяется, и в докладе пойдет речь о том, что делать, если используемый инструмент, на котором написаны все ваши тесты, перешёл в статус «deprecated». Евгений также покажет, с какими проблемами можно столкнуться при переходе на WebdriverIO или Playwright.

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


Best practices

Сказка о потерянном времени

Артем Ерошенко

Qameta Software

Артем хорошо знаком зрителям Heisenbug. Доклады Артема помогают решить рабочие задачи практически каждому посетителю конференции. И вновь Артем — автор Allure framework — выступит с актуальной темой, проиллюстрированной реальными кейсами.

Целесообразность и эффективность автоматизированного тестирования волнует не только менеджеров, но и самих тестировщиков. Артём сравнит на актуальных примерах ручное и автоматизированное тестирование.

Вне зависимости от вашей роли в проекте, если вы задумывались о сравнении ручного и автоматизированного тестирования в компании — этот доклад для вас.


Селениды против велосипедов

Яков Крамаренко

Automician

Яков — автор портов Selenide из Java в Python, С#, JS — Selene, NSelene, SelenideJs. Последователь подходов KISS и Context-Driven в разработке и тестировании. Пережил множество дебатов на тему: «А зачем нужна еще одна selenium-обертка?»

Доклад будет холиварным. Но при этом технических подробностей будет много: Яков расскажет о требованиях по основным фичам для минимального фреймворка на основе Selenium Webdriver и для высокоуровневых системных UI-тестов (c примерами на Python). Разберет основные стили API таких фреймворков и конкретно стиль Selenide/Selene и т. д.

 Доклад будет интересен практикующим инженерам, любителям холиваров, фанатам готовых оберток над Selenium, любителям писать свои инструменты, автоматизаторам на Python и просто неравнодушным.


Подготовка тестовых данных на примере интеграционных тестов на Go

Дмитрий Колесник

Ozon

Дмитрий более шести лет тестирует интернет-приложения. Сейчас занимается разработкой инструментов тестирования в Ozon, автоматизацией тестирования, обучением и менторством. Пишет тесты на Go.

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


Pytest Plugins: Как расширить функционал тестового фреймворка через плагины

Александр Волков

YADRO

Александр — тимлид команды автоматизации интеграционного тестирования в YADRO. Развивает фреймворк для тестирования продуктов компании. До этого занимался автоматизацией тестирования In-Memory DB, продуктов банковской сферы.

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

Выступление будет интересно практикующим инженерам, использующим Python и Pytest. Они смогут понять, когда и как можно выносить какую-то функциональность в плагины.


Adding tests to untestable legacy code

Анна Филина

Filina Consulting

Анна — признанный эксперт в сфере работы с легаси-кодом. Разработчик с 1997 года, любит элегантный код и автоматизированное тестирование.

Работать на проектах без легаси-кода — недостижимая мечта каждого инженера. Ведь как известно, любой проект, где больше одной строчки кода, уже имеет легаси. Как подойти к тестированию, если код не поддается ему? С чего начать в приложении, в котором нет тестов? Что делать с существующими тестами, которые либо трудно понять, либо они пришли в негодность? Анна ответит на все эти вопросы, показав, как эти задачи были решены в реальных проектах.

И если вы хоть раз принимали участие в разработке, поддержке, тестировании проектов «с историей», то этот доклад для вас.


Non-functional

SAST снаружи и изнутри

Сергей Васильев

PVS-Studio   

Сергей — тимлид разработки C# анализатора в команде PVS-Studio, глубоко погружен в тему статического анализа. В прошлом — спикер нашей конференции DotNext.

В докладе пойдет речь о безопасности, уязвимостях, а также о том, где здесь место SAST. Чем CWE отличается от CVE? Зачем нужна MISRA? Что такое OWASP? Что общего между SQLI и XSS? Как SAST-решения обнаруживают различные недостатки безопасности? Какие технологии используются для этого? Как работает taint analysis?

Сергей ответит на эти вопросы и покажет, как все это выглядит на практике.

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


Антипаттерны тестирования производительности

Виктор Ганелес

Промсвязьбанк 

Кирилл Юрков

Самокат

Тестирование производительности — область, полная ловушек, подстерегающих новичков. Наши спикеры, увидев, что многие наступают на одни и те же грабли, решили устроить разговорное шоу, в котором обсудят часто встречающиеся на практике проблемы. В докладе будут затронуты темы:

  • «реальный» пользователь;

  • RPS и TPS;

  • нагрузка статики;

  • сбор профиля.

И многое другое.

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

Весь материал разрабатывался специально для этой конференции и будет представлен впервые.


Fundamentals

Принципы юнит-тестирования

Владимир Хориков

Enterprise Craftsmanship LLC

Владимир знаком некоторым нашим слушателям по конференции DotNext, он также автор книги Unit Testing Principles, Practices, and Patterns. Владимир писал в нашем блоге про разные школы юнит-тестирования, а в своем докладе раскроет тему юнит-тестирования ещё подробнее.

В контексте качества тестов внимание обычно фокусируются на их способности отловить баги, например, за счёт покрытия кода. Тем не менее это лишь один из аспектов оценки качества. Бывают и такие тесты, которые вроде бы есть, но из-за своего низкого качества никакой пользы проекту не несут. Умение написать эффективный, понятный, поддерживаемый, устойчивый к изменениям тест — целое искусство, и Владимир поделится своими соображениями на этот счет.

Доклад будет полезен тестировщикам и разработчикам и позволит ответить на вопрос: «А правильно ли мы пишем свои тесты и что в них можно улучшить?­»


Исследовать нельзя тестировать

Юлия Атлыгина

ALM Works 

В тестировании Юлия более 12 лет, последние из которых провела в ALM Works, разрабатывая плагины для Atlassian Jira и Confluence. Роль тестировщика совмещает с ролью Product Manager.

Как показывает опыт, тестировщики очень мало знают о техниках тест-дизайна. И если про граничные значения вспоминает хотя бы каждый третий, то что такое exploratory-тестирование, уже не может ответить почти никто. В докладе Юлия расскажет, что это такое, зачем нужно, так ли необходимо и как его организовать, если вы тоже захотите попробовать.

Если вопросы про техники тест-дизайна, принципы тестирования или их применение ставят вас в тупик — стоит сходить. Доклад будет полезен и тем, кто читал теорию тестирования и хотел бы освежить знания. Не можете с ходу сказать, как применяются тестовые туры и другие техники исследовательского тестирования — тоже заглядывайте!


Как работает fuzzing-тестирование. Рассказ простым языком

Николай Шаплов

Postgres Professional 

Николай — программист, который любил писать тесты. После многих лет работы в области разработки веб-ориентированных систем (Perl) и нескольких лет системного программирования (С), судьба завела его в область фаззинг-тестирования. И вот тут-то все и началось...

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

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


Заключение

Это еще не все: сейчас в программу вносят последние дополнения. Причём как раз они могут оказаться очень интересными! Следить за самым актуальным состоянием можно на сайте конференции, так что если вам нужно знать о 100% докладов, заглядывайте туда. А если вам уже достаточно информации, чтобы принять решение — приобрести билеты можно там же.

Ждем вас 5–7 октября в онлайне!




К сожалению, не доступен сервер mySQL