Полный цикл тестирования React-приложений, Алексей Андросов и Наталья СтусьMail.ru Group
Основой доклада будет как и полгода назад: наш опыт построения тестирования фронтенда в Авто.ру на базе Jest и Puppeteer: юнит-тесты, тесты на отдельные React-компоненты, интеграционные тесты. За это время накопили интересные примеры тестирования, о чем и хотим рассказать.
Performance Testing Strategy Template by Egor B EremeevEgor Eremeev
Полностью проработанный пример и шаблон документа Методика Тестирования Производительности.
Шаблон разработан в пику примерам с формальным набором разделов, к сожалению, имеющим широкое хождение в организациях.
Цель данного шаблона - дать содержательную структуру заказчикам тестирования, IT руководителям и инженерам по тестированию.
Особенностью шаблона является:
1) строгое определение характеристик (метрик) производительности
2) подробная модель нагрузки
3) детальный план раундов тестирования вместе с необходимыми конфигурациями
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов2ГИС Технологии
Как создать Front End-команду для высоконагруженного проекта? Спикер расскажет, как можно выстроить эффективный процесс фронтенд-разработки с упором на технические аспекты: — Команда фронтенд-разработчиков. Зоны ответственности между теми, кто программирует UI (верстальщики), и теми, кто отвечает за бизнес-логику (Javascript-программисты). Идеальный состав команды. — Настроенный технологический процесс. Модульная организация (подготовка дизайна → разработка формата данных → создание шаблона → навешивание событий → тесты). — Разработка вместе с тестированием Unit-/DOM-тесты и подход PixelPerfect. — Вёрстка независимыми блоками и встроенный в приложение режим для вёрстки блоков.
Клиентские приложения под нагрузкой (HighLoad 2014)Andrey Smirnov
"Что там писать клиентское приложение - вот сервер, который выдерживает 10 тысяч запросов в секунду!"... "Да они там только API делают, вот бы хоть одно приложение под iOS написали!"
Подобный обмен претензиями частенько можно услышать в спорах клиентских и серверных разработчиков. В этом докладе я попробую примирить обе стороны. Только от успешного взаимодействия клиентского приложения и серверной части зависит успех высоконагруженного проекта в целом.
* Как сделать так, чтобы клиент не "завалил" сервер?
* Коммуникация ошибок от сервера к клиенту.
* Синхронизация, разрешение конфликтов.
* Работа в offline-режиме.
* Разработка эффективного и корректного API.
* Асинхронное взаимодействие.
* Почему клиент и сервер на самом деле очень похожи?
КРИ 2014: Расширение возможностей вашей игры с помощью Microsoft AzureMicrosoft
Современные игровые приложения трудно представить без множества онлайн сервисов, в том числе обеспечивающих монетизацию, взаимодействие игроков между собой. Построение инфраструктуры таких сервисов может потребовать значительных вложений. Разумным решением этого вопроса является использование существующих облачных платформ, например, Microsoft Azure. В этом докладе будет рассказано о типовых сценариях использования облака в играх и примерах архитектур, которые могут быть использованы в этих сценариях.
Об уменьшении энтропии при разработке интерфейса «Портала здравоохранения Московской области» на 1C-Битрикс. В докладе я покажу разницу в подходах БЭМ и Битрикс, расскажу о своих мыслях на старте разработки, о процессе создания шаблонов, проблемах и решениях, общении в команде и планах на будущее.
Полный цикл тестирования React-приложений, Алексей Андросов и Наталья СтусьMail.ru Group
Основой доклада будет как и полгода назад: наш опыт построения тестирования фронтенда в Авто.ру на базе Jest и Puppeteer: юнит-тесты, тесты на отдельные React-компоненты, интеграционные тесты. За это время накопили интересные примеры тестирования, о чем и хотим рассказать.
Performance Testing Strategy Template by Egor B EremeevEgor Eremeev
Полностью проработанный пример и шаблон документа Методика Тестирования Производительности.
Шаблон разработан в пику примерам с формальным набором разделов, к сожалению, имеющим широкое хождение в организациях.
Цель данного шаблона - дать содержательную структуру заказчикам тестирования, IT руководителям и инженерам по тестированию.
Особенностью шаблона является:
1) строгое определение характеристик (метрик) производительности
2) подробная модель нагрузки
3) детальный план раундов тестирования вместе с необходимыми конфигурациями
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов2ГИС Технологии
Как создать Front End-команду для высоконагруженного проекта? Спикер расскажет, как можно выстроить эффективный процесс фронтенд-разработки с упором на технические аспекты: — Команда фронтенд-разработчиков. Зоны ответственности между теми, кто программирует UI (верстальщики), и теми, кто отвечает за бизнес-логику (Javascript-программисты). Идеальный состав команды. — Настроенный технологический процесс. Модульная организация (подготовка дизайна → разработка формата данных → создание шаблона → навешивание событий → тесты). — Разработка вместе с тестированием Unit-/DOM-тесты и подход PixelPerfect. — Вёрстка независимыми блоками и встроенный в приложение режим для вёрстки блоков.
Клиентские приложения под нагрузкой (HighLoad 2014)Andrey Smirnov
"Что там писать клиентское приложение - вот сервер, который выдерживает 10 тысяч запросов в секунду!"... "Да они там только API делают, вот бы хоть одно приложение под iOS написали!"
Подобный обмен претензиями частенько можно услышать в спорах клиентских и серверных разработчиков. В этом докладе я попробую примирить обе стороны. Только от успешного взаимодействия клиентского приложения и серверной части зависит успех высоконагруженного проекта в целом.
* Как сделать так, чтобы клиент не "завалил" сервер?
* Коммуникация ошибок от сервера к клиенту.
* Синхронизация, разрешение конфликтов.
* Работа в offline-режиме.
* Разработка эффективного и корректного API.
* Асинхронное взаимодействие.
* Почему клиент и сервер на самом деле очень похожи?
КРИ 2014: Расширение возможностей вашей игры с помощью Microsoft AzureMicrosoft
Современные игровые приложения трудно представить без множества онлайн сервисов, в том числе обеспечивающих монетизацию, взаимодействие игроков между собой. Построение инфраструктуры таких сервисов может потребовать значительных вложений. Разумным решением этого вопроса является использование существующих облачных платформ, например, Microsoft Azure. В этом докладе будет рассказано о типовых сценариях использования облака в играх и примерах архитектур, которые могут быть использованы в этих сценариях.
Об уменьшении энтропии при разработке интерфейса «Портала здравоохранения Московской области» на 1C-Битрикс. В докладе я покажу разницу в подходах БЭМ и Битрикс, расскажу о своих мыслях на старте разработки, о процессе создания шаблонов, проблемах и решениях, общении в команде и планах на будущее.
2. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
1
Оглавление
1 Подключение проекту............................................................................................................................. 3
2 Основные представления ....................................................................................................................... 4
2.1 Сводная панель................................................................................................................................ 4
2.2 Задания............................................................................................................................................ 4
2.3 Сводная............................................................................................................................................ 5
2.4 Отчеты.............................................................................................................................................. 5
3 Создание рабочих элементов................................................................................................................. 5
4 Поиск заданий......................................................................................................................................... 9
4.1 Быстрый поиск................................................................................................................................. 9
4.2 С помощью предопределенных запросов. ................................................................................... 10
4.3 Открытие последних заданий ....................................................................................................... 10
4.4 Поиск потенциальных дубликатов................................................................................................ 11
5 Настройка рабочих элементов.............................................................................................................. 12
5.1 Определение категории................................................................................................................ 12
5.2 Определение релизов................................................................................................................... 13
6 Использование запросов по заданиям................................................................................................. 13
7 Работа с заданиями и их изменение .................................................................................................... 15
7.1 Продвижение заданий .................................................................................................................. 15
7.2 Связывание заданий...................................................................................................................... 16
7.3 Просмотр истории заданий........................................................................................................... 18
7.4 Перенос заданий в другой проект ................................................................................................ 18
7.5 Ввод времени для заданий ........................................................................................................... 19
8 Экспорт заданий.................................................................................................................................... 20
9 Рецензирование и утверждение заданий ............................................................................................ 20
9.1 Создание рецензии на задание .................................................................................................... 20
9.2 Проведение рецензии................................................................................................................... 21
10 Изменение личной информации ...................................................................................................... 21
11 Создание заданий из шаблона ......................................................................................................... 24
12 Полезные возможности .................................................................................................................... 25
12.1 Возможности редактора................................................................................................................ 25
12.2 Быстрая отправка почты................................................................................................................ 26
12.3 Массовое редактирование записей.............................................................................................. 27
3. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
2
12.4 Подписка на задания..................................................................................................................... 28
4. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
3
1 Подключение проекту
1. Запустить Web-браузер.
2. Ввести путь:
3. На странице авторизации ввести идентификационные данные.
4. Выбрать необходимый для работы проект.
5. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
4
2 Основные представления
2.1 Сводная панель
2.2 Задания
6. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
5
2.3 Сводная
2.4 Отчеты
3 Создание рабочих элементов
1. В разделе Задания в проекте вызвать создание необходимого типа задания.
7. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
6
2. Ввести все необходимые поля (обязательные поля обозначены красными звездочками)
3. Сохранить изменения.
4. Нажать кнопку Сделать снимок экрана и прикрепить к заданию.
5. При первом использовании инструмента копирования экрана.
5.1. В появившемся окне нажать кнопку ОК.
8. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
7
5.2. На следующем шаге будет отображен запрос на открытие файла и выбор программы по
умолчанию. Необходимо выбрать программу Java Web Start и нажать кнопку ОК.
5.3. Разрешить установку приложения:
5.4. Запустить приложение:
9. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
8
6. Скопировать часть экрана, выделить на снимке необходимые объекты и нажать кнопку Новое
задание.
7. Прикрепить вложение и сохранить изменения.
8. Зарегистрировать новые задания:
№ Тип Наименование Описание Вложения
1. Запрос на
изменен
ие
Связать с
редактором на
вкладке
ожидающих
изменений
Кнопка "Связать с редактором" в проводнике
пактов очень полезна. Обеспечьте похожую
функциональность на вкладке ожидающих
изменений.
2. Дефект Сервер виснет
с ошибками
WebContainer
Сервер несколько раз подвисает с периодичностью
в час с ошибками, которые приложены в атачмент.
jazzop13_javacor
es
jazzop13_logs
10. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
9
3. Дефект Асинхронная
задача сбора
мусора падают
периодически
Лог ошибки:
2012-06-02 08:00:07,648 [ ccm:
AsynchronousTaskRunner-2] ERROR
.cleanup.collectors.SourceCodeDataGarbageCollector -
com.ibm.team.repository.common.TeamRepositoryExc
eption: CRJZZ0601E Dependency query failed: Failed to
run the query. Response Status Line: HTTP/1.1 400 Bad
Request
2012-06-03 08:00:08,126 [ ccm:
AsynchronousTaskRunner-2] ERROR
.cleanup.collectors.SourceCodeDataGarbageCollector -
com.ibm.team.repository.common.TeamRepositoryExc
eption: CRJZZ0601E Dependency query failed: Failed to
run the query. Response Status Line: HTTP/1.1 400 Bad
Request
2012-06-04 08:00:08,414 [ ccm:
AsynchronousTaskRunner-3] ERROR
.cleanup.collectors.SourceCodeDataGarbageCollector -
com.ibm.team.repository.common.TeamRepositoryExc
eption: CRJZZ0601E Dependency query failed: Failed to
run the query. Response Status Line: HTTP/1.1 400 Bad
Request
4. Запрос на
изменен
ие
Доступность
веб-
интерфейса:
медленная
работа с
горячими
клавишами
Обработка нажатия клавиш в веб-интерфейсе
может иметь чрезвычайно вялую реакцию.
Например, ins + f7, в котором перечислены все
ссылки на странице, может занять до 5 секунд
выполнения.
5. Дефект Загрузка
компонент с
символически
ми ссылками в
клиенте не
работает
В клиенте не происходит никаких действий, если
присутствуют символические ссылки
4 Поиск заданий
4.1 Быстрый поиск
1. В правой верхней части клиента ввести идентификатор задания и нажать Ввод.
11. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
10
4.2 С помощью предопределенных запросов.
1. Открыть область артефактов ЗаданияОбщие запросы[необходимый запрос].
2. В нижней части области клиента проверить результат запроса и выбрать необходимое задание.
4.3 Открытие последних заданий
1. С помощью панели задания:
12. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
11
1.1. Открыть панель задания и просмотреть текущие задачи в ней:
2. С помощью стартовой страницы
2.1. Переключиться на домашнюю страницу проекта
2.2. Просмотреть панель статистика по заданиям:
4.4 Поиск потенциальных дубликатов
1. Создать задание, которое будет иметь в тексте совпадение с другими заданиями.
2. Нажать Найти возможные копии.
13. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
12
5 Настройка рабочих элементов
5.1 Определение категории
1. Открыть настройки проекта.
2. Переключиться на вкладку Категории.
3. Добавить новые категории.
14. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
13
4. Сохранить изменения.
5.2 Определение релизов
1. Открыть настройки проекта.
2. Переключиться на вкладку Выпуски.
3. Добавить новые выпуски.
4. Сохранить изменения.
6 Использование запросов по заданиям
1. Выбрать создание нового запроса в разделе Мои запросы.
15. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
14
2. Ввести наименование и условие запроса.
3. Внести изменения запроса и определить доступ по необходимости.
4. Задать столбцы для отображения и параметры для сортировки.
16. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
15
5. Сохранить изменения.
7 Работа с заданиями и их изменение
7.1 Продвижение заданий
1. Найти нужное задание с помощью запроса или быстрого поиска.
2. Изменить состояние задания на значение Начать работу.
3. Назначить исполнителя, если он не был назначен.
4. Запланировать на этап.
17. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
16
5. Сохранить изменения.
6. Проверить результат работы в панели Моя работа.
7. Провести задание по всему жизненному циклу.
7.2 Связывание заданий
1. Открыть существующее задание (Дефект).
2. Нажать кнопку Добавить в разделе Ссылки.
3. Выбрать тип ссылки Является дубликатом.
4. Найти первичное задание c использованием запроса.
18. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
17
5. Сохранить изменения.
6. Проверить наличие ссылок в первичном задании.
7. Создать для первичного создание задание на исправление с помощью ссылки Кем исправлен, также
на шаге поиска задания необходимо нажать Создать задание для создания новой задачи.
8. Создать дочернее задание для задания с типом Задачи.
19. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
18
7.3 Просмотр истории заданий
1. Найти нужное задание с помощью запроса или быстрого поиска.
2. Перейти на вкладку Хронология и проверить изменение полей.
7.4 Перенос заданий в другой проект
1. Найти нужное задание с помощью запроса или быстрого поиска.
2. Нажать на кнопку Переместить или скопировать в другую область проекта.
20. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
19
3. Выбрать необходимые действия и нажать кнопку Далее.
4. Сохранить изменения.
7.5 Ввод времени для заданий
1. Найти нужное задание с помощью запроса или быстрого поиска.
2. Выбрать вкладку Отслеживание времени.
3. Выбрать необходимый промежуток времени для отчетного периода ин нажать Добавить запись
времени.
4. Ввести тип работ и заполнить часы работ.
5. Проверить значение поля Затраченное время.
6. Сохранить изменения
21. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
20
8 Экспорт заданий
1. Выполнить необходимый запрос.
2. Выбрать в запросе Загрузить в виде таблицы:
3. Сохранить либо открыть выгружаемый файл.
9 Рецензирование и утверждение заданий
9.1 Создание рецензии на задание
1. Открыть необходимое задание и перейти на вкладку Утверждения.
2. Выбрать добавление нового утверждения.
3. Ввести необходимый тип, тему, дату выполнения и нажать кнопку Ок.
22. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
21
4. Выбрать утверждение из списка утверждений и нажать кнопку Добавить утверждающего.
5. Выбрать необходимых пользователей для утверждения.
6. Сохранить изменения.
9.2 Проведение рецензии
1. Войти в систему под утверждающим.
2. Выполнить общий запрос Ожидающие утверждения для меня.
3. Открыть задание и перейти на вкладку утверждений.
4. Выбрать строку с логином утверждающего и установить результат утверждения.
5. Сохранить изменения.
10 Изменение личной информации
1. Выбрать выпадающее меню пользователя и нажать Показать мой профайл и лицензии.
2. Установить новую фотографию для пользователя.
23. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
22
3. Изменить пароль пользователя.
4. Установить необходимые значения региональных параметров, часового пояса и рабочих часов
на вкладке Рабочая среда.
5. Указать процентное участие в проекте.
24. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
23
6. Добавить плановое отсутствие на соответствующей вкладке.
7. Указать необходимый набор уведомлений на вкладке конфигурация почты.
8. Проверить результат настройки сообщений.
25. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
24
11 Создание заданий из шаблона
1. Вызвать создание задания из шаблона в меню Файл.
2. Выбрать необходимый шаблон, указать параметры и нажать кнопку Создать из шаблона.
26. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
25
3. Проверить результат.
12 Полезные возможности
12.1 Возможности редактора
1. Создать или открыть любое существующее задание.
2. Перейти на поле описания, нажать изменить и ввести описание. Для вставки ссылки на другое
задание нажать кнопку Вставить ссылку на задание.
27. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
26
3. Выбрать необходимое задание с помощью формы поиска, в результате в тексте появится ссылка
на вставленное задание.
4. Ввести дополнительный текст и нажать кнопку Вставить ссылку на пользователя.
5. Выбрать необходимого пользователя из повившего списка, в результате в тексте появится
ссылка на пользователя.
6. Сохранить изменения и проверить результат.
12.2 Быстрая отправка почты
1. Открыть любое назначенное задание.
2. Нажать правой кнопкой на ссылке Владелец и выбрать Отправить почту.
28. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
27
3. Ввести текст письма и другую необходимую информацию.
12.3 Массовое редактирование записей
1. Запустить необходимый запрос.
2. В результатах запроса нажать кнопку Изменить несколько заданий.
3. Нажать кнопку Добавить изменение атрибута.
29. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
28
4. Выбрать атрибут и указать значение.
5. Выбрать необходимые задания
6. Выполнить изменение.
7. Проверить результат.
12.4 Подписка на задания
1. Открыть необходимое задание и перейти на вкладку Ссылки.
2. Перейти в раздел подписчики и нажать Добавить…
30. 117042, г. Москва, ул. Южнобутовская, 23, Телефон/Факс: +7(495)-648-63-28
Web: http://www.cmcons.com; E-mail: info@cmcons.com
29
3. В появившемся в окне выбрать и добавить нового подписчика.
4. Сохранить изменения.