27 января
12:00
Королева, 2а
«Как протестировать все
и не сойти с ума»
Во время доклада будут раскрыты следующие темы:
  • как выстраивать окружение для тестирования веб-приложений и приложений на React-Native;

  • как тестируются React-компоненты с использованием unit-тестирования;

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

В процессе будут написаны тесты для мобильных и веб-приложений, компонентов и API.
Рассказывает Антон Кузнецов
Фронтенд Тимлид в Tipsi

Видео и фото

Были на лекции?
Пожалуйста, расскажите нам свои впечатления,
поделитесь замечаниями и пожеланиями — learning.fabit@gmail.com

Будем рады любой обратной связи.

О мероприятии

В своем докладе я хочу поделиться с вами тем, как мы в Tipsi выстраивали окружение для тестирования веб приложений и 8 параллельно разрабатываемых приложений на React-Native.

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

Как мы тестируем React-компоненты, используя unit-тестирование.

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

Обсудим как тестировать обертку над API, а также поговорим о том, зачем всем нам это вообще надо.

Разберемся с тем, почему нам всегда лень писать тесты, решим раз и навсегда проблему под названием «это протестировать невозможно!»

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

Вот уже 2 года я работаю в Tipsi.

Пришел в команду фронтендером на модный и современный стек на React.

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

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

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

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

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

Наш стек:
  • Пишем на React, React-Native
  • Используем redux, redux-entities, normalizr
  • Тестируем с помощью Webdriver.IO, Appium, Detox, Tape, Jest, Enzyme
  • Билдим с помощью Webpack, Fastlane, Gradle
  • Релизим с помощью Docker, Fastlane
  • Контроль версий в Gitlab
  • Вносим свой вклад в open source и разрабатываем tipsi-stripe для RN
https://gettipsi.com/

Почитайте публикации о Tipsi в таких изданиях как:

Антон Кузнецов
Фронтенд Тимлид в Tipsi.
https://github.com/isnifer

Программа меропрития

1. echo $ (whoami)
2. Небольшая вводная о пользе тестов (личный опыт)
  • Короткая история о том, как я пришел в разработку
  • Ровно как и история о том, как я попал в Tipsi
3. Виды тестирования
  • Unit
  • E2E
  • Интеграционное
4. Объекты тестирования
  • Приложение
  • Бизнес-логика
  • API
  • Компоненты
  • Утилиты?
4. Инструменты
  • Webdriver.IO — база всех наших тестов
  • Appium — обертка над нативными средствами тестирования моб приложений
  • Detox — быстрый и эффективный конкурент Appium
  • tipsi-appium-helper — раннер тестов для Appium
  • Tape (AVA) — зачем tape, когда есть Jest?
  • Jest — идеален для ваших unit-тестов
  • Enzyme — стандарт де-факто для тестирования ваших компонентов
  • Puppeteer — API для управления Headless Chrome
5. Как, зачем и в каком порядке мы развили нашу инфраструктуру для тестов?
  • Планирование процесса разработки исходя из тестирования
  • Тестирование обертки над клиентским API
  • Сэмпл приложения
  • О необходимости Continious Integration
  • Автоматизируй это!
  • Разработка и тестирование приложения
6. Основные принципы, которых придерживается наша команда при тестировании
7. С чего начать вам, если вы еще не, или что вам улучшить, если вы уже!

В процессе доклада мы напишем тесты для мобильных и веб-приложений, компонентов и API.
Белгород
ул. Королева, 2а, корпус 2

Зал для проведения мероприятий, расположен на первом этаже бизнес пространства «Контакт»
напротив входа в кафе «Молоко».
Все обновления и информация по таким мероприятиям
публикуется на канале @fituniversityinfo, добавляйтесь!