Will tell about real cases that may arise if you would not test a layout of your application. We’ll take a look at popular tools for automated layout testing and dive deep into Galen Framework usage. Consider how to build an automatic design review process in a scrum team and what pros and cons such process has in real work.
По традиции приглашаем вас на встречу с кратким обзором новых функций обновленной версии среды разработки Visual Studio 2015. Мы также поговорим о кроссплатформенной разработке для мобильных платформ, изменениях в веб-стеке, новой версии языка C# и open source инициативах Microsoft
В этой презентации я рассказываю не только об автотестах, а о целом комплексе автоматических инструментов для обеспечения качества веб-сервиса на разных этапах разработки.
Как обеспечить проверку формата? Как поддерживать документацию в актуальном виде? Какую архитектуру выбрать для функциональных тестов?
Немного интересного про JSON-схемы и параметризованные тесты, про тестирование API методом чёрного ящика и про выбор исходных данных для тестирования.
По традиции приглашаем вас на встречу с кратким обзором новых функций обновленной версии среды разработки Visual Studio 2015. Мы также поговорим о кроссплатформенной разработке для мобильных платформ, изменениях в веб-стеке, новой версии языка C# и open source инициативах Microsoft
В этой презентации я рассказываю не только об автотестах, а о целом комплексе автоматических инструментов для обеспечения качества веб-сервиса на разных этапах разработки.
Как обеспечить проверку формата? Как поддерживать документацию в актуальном виде? Какую архитектуру выбрать для функциональных тестов?
Немного интересного про JSON-схемы и параметризованные тесты, про тестирование API методом чёрного ящика и про выбор исходных данных для тестирования.
Сергей Мелашич "Настройка SEO для одностраничных web-приложений на Angular"Fwdays
В докладе расскажу о шишках, набитых в процессе настройки SEO для конкретного проекта. Речь пойдет о настройке SEO для своего одностраничного приложения как с привлечением сторонних сервисов, так и самостоятельно, используя PhantomJS или рендеринг на стороне сервера. Также, поделюсь особенностями размещения share-кнопок от различных провайдеров.
Автоматическая сборка и развертывание на платформе 1CAlexey Lustin
1. Непрерывная интеграция функционала. Методическая практика развертыванияпродукта. Блоки работ необходимые к проведению в рамках передачи релиза конфигурации в production эксплуатацию. Методические рекомендации фирмы 1С по подготовке продукта к непрерывной интеграции.
2. Способы реализации этапов непрерывной интеграции функционала на платформе 1С и сервере непрерывной интеграции
3. Особенности прохождения этапов сборки и развертывания в зависимости от типа задачи - исправление ошибок, изменение кода, изменение структуры метаданных и т.д.
4. Типовые недочеты и способы их исправления в рамках автоматизированной сборки продукта и его последующего развертывания. Типовые сценарии отката развернутой функциональности
TDD: когда нужно и, самое главное, когда не нужно / Павел Калашников (SimbirS...Ontico
РИТ++ 2017, Backend Conf
Зал Кейптаун, 5 июня, 18:00
Тезисы:
http://backendconf.ru/2017/abstracts/2738.html
TDD - Test Driven Development. Разработка через тесты.
Очень многие знают про эту методологию, очень многие хотели бы использовать, далеко не все используют.
На этом докладе мы разберём:
* когда стоит использовать TDD в разработке проекта;
* когда НЕ стоит использовать TDD, потому что он будет мешать;
* несколько аргументов для тимлида, заказчика, PM и т.д., которые помогут разработчику продвинуть TDD в проект;
* о применении TDD в продуктовой разработке и в аутсорсе.
"Опыт разработки универсальной библиотеки визуальных компонентов в HeadHunter...MoscowJS
При увеличении количества проектов в компании, разработчики сталкиваются с задачей унификации кодовой базы. Решением подобной задачи может быть библиотека, фреймворк или общий набор компонент. Такой инструмент позволит разработчикам сконцентрироваться только на новых задачах, избежать дублирования кода и повысить производительность.
В HeadHunter с такой задачей столкнулись в 2014 году. Решением данной проблемы стало создание унифицированной библиотеки компонент, которая успешно используется на всех проектах HH. В своем докладе я хотел бы поделиться опытом развития библиотеки, проблемами, которые возникали при разработке, и их последовательным решением.
Сергей Мелашич "Настройка SEO для одностраничных web-приложений на Angular"Fwdays
В докладе расскажу о шишках, набитых в процессе настройки SEO для конкретного проекта. Речь пойдет о настройке SEO для своего одностраничного приложения как с привлечением сторонних сервисов, так и самостоятельно, используя PhantomJS или рендеринг на стороне сервера. Также, поделюсь особенностями размещения share-кнопок от различных провайдеров.
Автоматическая сборка и развертывание на платформе 1CAlexey Lustin
1. Непрерывная интеграция функционала. Методическая практика развертыванияпродукта. Блоки работ необходимые к проведению в рамках передачи релиза конфигурации в production эксплуатацию. Методические рекомендации фирмы 1С по подготовке продукта к непрерывной интеграции.
2. Способы реализации этапов непрерывной интеграции функционала на платформе 1С и сервере непрерывной интеграции
3. Особенности прохождения этапов сборки и развертывания в зависимости от типа задачи - исправление ошибок, изменение кода, изменение структуры метаданных и т.д.
4. Типовые недочеты и способы их исправления в рамках автоматизированной сборки продукта и его последующего развертывания. Типовые сценарии отката развернутой функциональности
TDD: когда нужно и, самое главное, когда не нужно / Павел Калашников (SimbirS...Ontico
РИТ++ 2017, Backend Conf
Зал Кейптаун, 5 июня, 18:00
Тезисы:
http://backendconf.ru/2017/abstracts/2738.html
TDD - Test Driven Development. Разработка через тесты.
Очень многие знают про эту методологию, очень многие хотели бы использовать, далеко не все используют.
На этом докладе мы разберём:
* когда стоит использовать TDD в разработке проекта;
* когда НЕ стоит использовать TDD, потому что он будет мешать;
* несколько аргументов для тимлида, заказчика, PM и т.д., которые помогут разработчику продвинуть TDD в проект;
* о применении TDD в продуктовой разработке и в аутсорсе.
"Опыт разработки универсальной библиотеки визуальных компонентов в HeadHunter...MoscowJS
При увеличении количества проектов в компании, разработчики сталкиваются с задачей унификации кодовой базы. Решением подобной задачи может быть библиотека, фреймворк или общий набор компонент. Такой инструмент позволит разработчикам сконцентрироваться только на новых задачах, избежать дублирования кода и повысить производительность.
В HeadHunter с такой задачей столкнулись в 2014 году. Решением данной проблемы стало создание унифицированной библиотеки компонент, которая успешно используется на всех проектах HH. В своем докладе я хотел бы поделиться опытом развития библиотеки, проблемами, которые возникали при разработке, и их последовательным решением.
Open Source Testing Framework: real project example and best practicesAliaksandr Ikhelis
Summary: Presentation on open source testing frameworks (improved version, more focus on real project example) at Software Engineering Forum 2009 (SEF-1) conference by Aliaksandr Ikhelis. Sponte framework developer and owner is Stanislaw Wozniak, Expedia Limited, UK. Sponte project homepage: http://rubyforge.org/projects/sponte/; http://github.com/swozniak/sponte/tree/master
В мире автоматизации давным-давно успешно используют W3C Webdriver HTTP протокол. С его помощью реализовано множество проектов и библиотек на различных языках (selenide, protractor, webdriverio и тысячи других). Но так же в последнее время все больше и больше команд решают использовать Chrome Debug Protocol, в частности инструмент Puppeteer. Он основан на WebSockets, и имеет свои особые возможности - двухсторонняя связь, возможность подписки на события в браузере, и многое другое. В этом докладе мы посмотрим возможности обоих протоколов, поэкспериментируем и совместим их вместе в одном проекте, чтобы заставить браузер работать на полную и взять лучшее от двух каналов связи.
https://seleniumcamp.com/talk/webdriverio-puppeteer-double-gun-double-fun/
In the automation world, W3C Webdriver HTTP protocol has been successfully used for a long time. With its help, many projects and libraries in various languages have been implemented (selenide, protractor, webdriverio and thousands of others). But more and more teams decide to use Chrome Debug Protocol, in particular the Puppeteer tool. It is based on WebSockets, and has its own special features – two-way communication, ability to subscribe to events in the browser, and much more. In this talk, we will look at the capabilities of both protocols, experiment and combine them together in one project to make the browser work at full power, and take the best from both communication channels.
Glib Rybalko, GlobalLogic’s Test Lead, consultant and trainer was among 26 known Ukrainian and international experts who took a word on IT Weekend Ukraine 2013. Glib discussed features of automated software testing, benefits and feasibility of using this approach on various projects. During his speech, Glib pointed all necessary steps of automated testing implementation and gave homework for those who were interested in this field and wanted to implement it in their projects.
Привет, Санкт-Петербург!
В разгар летнего сезона, мы поговорим об историях обновлений,
например, с 6.4 до 7.х, с разными трюками, а также об истории исследования разных регрессий на продуктах Atlassian и других плагинов.
Наша программа будет пополняться, и мы рады к сотрудничеству.
Ждем Вас на встрече в Яндекс Деньгах.
Привет всем!
Сегодня поговорим про разработку плагинов и скриптов автоматизации в cloud и on-premises, а именно Андрей Маркелов поделится опытом разработки плагинов для cloud, после вы будете знать об архитектуре окружения и засвидетельствуете легкость разработки и выкладки плагина в облако в формате live. А Алексей Матвеев (РайффайзенБанк) поделится опытом автоматизации процесса разработки плагинов. На примерах, расскажет и покажет как сделать непрерывную интеграцию с помощью sonar, bitbucket, jacoco.
Регистрируйтесь и приходите! От Вас ждем по 2-3 вопроса! Будет интересно!
При себе иметь удостоверение личности в связи с пропускным контролем.
Ждем Вас на митапе!
P.S. Вход будет организован по спискам по паспорту. Поэтому, чтобы не было проблем с проходом на мероприятие, просим регистрироваться под реальными ФИО и указывать вашу компанию. Спасибо!
С уважением,
Atlassian User Group in Saint-Petersburg
Agenda 6:45 pm Регистрация
7:00 pm "Приветствие" - Гончик Цымжитов (Atlassian User Group)
Немного планов и сбор информации по докладам
7:05 pm "Процессы для доставки результатов для on-premises кастомизации" - Алексей Матвеев (РайффайзенБанк)
Алексей поделится опытом автоматизации процесса разработки плагинов. На примерах, расскажет и покажет как сделать непрерывную интеграцию с помощью sonar, bitbucket, jacoco.
7:55 pm Перерыв
Задаем вопросы спикеру и готовимся к обобщающей части
8:15 pm Пишем JIRA Cloud plugin за 15 минут на Spring Boot" - Андрей Маркелов
Андрей Маркелов поделится опытом разработки плагинов для cloud, после вы будете знать об архитектуре окружения и засвидетельствуете легкость разработки и выкладки плагина в облако в формате live
8:45 pm "Bitbucket Pipelines" - Андрей Маркелов и Гончик Цымжитов
Андрей расскажет процессы в облачной версии, а Гончик расскажет улучшение. Данная секция подразумевается для холивара и много сравнений с другими продуктами.
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQAFest
В своем докладе я расскажу, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование. Также расскажу с какими проблемами столкнулись, и как мы их устраняли. И да, каких результатов смогли добиться уже через полгода. А самое интересное, покажу как мы смогли добиться того, чтоб у нас pull request долетал до боя за 3 часа со всеми этапами тестирования.
Доклад будет содержать большое количество лайфхаков и обзоров инструментария, который мы использовали.
Практический доклад о том, как мы внедряли devops в банке, а конкретнее какую роль в этом процессе сыграло тестирование.
В докладе рассмотрены основные проблемы, с которыми команда столкнулась при внедрении и способы их устранения.
Продемонстрированы результаты, которых смогли достичь в течении полугода.
Доклад содержит большое количество лайфхаков и обзоров инструментария, который использовался для достижения цели.
4. Может приносить убытки
4
Bug с позиционированием всплывающих окон
Возник из-за обновления версии Chrome
3 часа пользователи не могли произвести
перевод в другой банк
10. Требования к инструменту для автоматизации тестирования верстки
‣ Низкий порог входа
‣ Поддержка кроссбраузерности
‣ Поддержка адаптивности
‣ Стабильность
‣ Возможность интеграции с существующими
инструментами
10
13. Из чего состоит
13
‣ для рендеринга
‣ для эмуляции действий пользователя
‣ для анализа, сравнения скриншотов
14. Требования к инструменту для автоматизации тестирования верстки
✓Низкий порог входа
- Поддержка кроссбраузерности
✓Поддержка адаптивности
✓Стабильность
- Возможность интеграции с существующими
инструментами
14
20. Galen Framework позволяет
20
‣ Тестировать расположение элементов
‣ Тестировать css стили
‣ Тестировать по скриншотам
‣ Эмулировать действия пользователя
‣ Проверять адаптивность
‣ Тестировать в разных браузерах
‣ Интегрироваться с Selemium тестами
21. Требования к инструменту для автоматизации тестирования верстки
21
✓ Низкий порог входа
✓ Поддержка кроссбраузерности
✓ Поддержка адаптивности
✓ Стабильность
✓ Возможность интеграции с существующими
инструментами
30. Пользовательский сценарий
Сценарий: Отображение страницы входа GitHub
Дано совершен переход на страницу "GitHub" по ссылке "gitHubUrl"
Тогда страница соответствует спецификации
"gitHubPage.spec" для экрана "desktop"
31. @Тогда("(?:страница соответствует|соответствует|блок соответствует) спецификации
"([^"]*)" для экрана "(D+)"")
public void compareCurrentPageWithBase(String spec, String tag) {
List<String> tags = new ArrayList<>();
tags.add(tag);
checkLayoutAccordingToSpec(spec, tags);
}
Cucumber Step Definition
Проверка, что текущая страница соответствует описанным в .spec файле
требованиям
* @param spec - Название galen-spec, где описан ожидаемый дизайн
* @param tag - название тэга в galen-speс (@on desktop), для которого
описан дизайн конкретных элементов.
33. Запуск тестов
33
Проверки в .spec файлах описали
Эталонные скриншоты сделали
Локально тесты прошли
Пора запустить тесты на ремоуте!
(у себя используем Selenoid)
35. Несоответствие изображений на разных ОС
error=Error{[Element does not look like «./akita-testing-template/src/test/resources/specs/
images/registration-form.png». There are 10,47% mismatching pixels but max allowed is 10%]
35
Actual Expected Map
37. Решение проблемы тестирования в разных OC
37
‣ Поставить допустимую погрешность (error) 15%
‣ Тестировать все в Docker
38. Решение проблемы тестирования в разных OC
38
‣ Поставить допустимую погрешность (error) 15%
‣ Тестировать все в Docker
‣ Ставить специальные теги в .spec файлах
54. Дизайнер и фронт-разработчик
Вместе заполняют контракт
*.spec в рамках проекта,
в котором описывают:
➡ какие элементы будут на
странице
➡ как они будут выглядеть (стили,
шрифты и прочее)
➡ где они будут располагаться
54
56. А что же делает тестировщик?
дополняет «Контракт»
следующим:
описывает элементы на
странице согласно локаторам
56
57. А что же делает тестировщик?
дополняет «Контракт»
следующим:
описывает элементы на
странице согласно локаторам
уточняет/проверяет
расположение элементов, их
стили и шрифты
57
58. А что же делает тестировщик?
дополняет «Контракт»
следующим:
описывает элементы на
странице согласно локаторам
уточняет/проверяет
расположение элементов, их
стили и шрифты
создает эталонные скриншоты
58
60. В итоге
‣ Сократили количество и время прохождения smoke
тестов ∽ на 20%
‣ Уверены в корректном отображении страницы для
топовых браузеров
60
61. В итоге
‣ Сократили количество и время прохождения smoke
тестов ∽ на 20%
‣ Уверены в корректном отображении страницы для
топовых браузеров
‣ Пришли к автоматическому дизайн-ревью
61
62. В итоге
‣ Сократили количество и время прохождения smoke
тестов ∽ на 20%
‣ Уверены в корректном отображении страницы для
топовых браузеров
‣ Пришли к автоматическому дизайн-ревью
‣ Поймали баги при изменении библиотеки UI-
компонентов
62
63. Подходит если
‣Зрелая Scrum команда
‣Требуется соблюдение единого дизайна
многостраничного приложения
‣Разрабатываем Webview и Web версии
‣В команде нет выделенного дизайнера на Full-time
63
64. Не всегда оправданно, если
‣Молодая Scrum команда
‣One page application
‣В команде есть Full-time дизайнер, который
сам проводит ревью верстки новых внедрений
64