Автоматизация тестирования как сервис, Павел Сташевский
Все мы хотим получать качественные сервисы. Мы хотим, чтобы обслуживание было быстрым, качественным и недорогим. Нам важно получить удовольствие от сервиса, будь то парикмахерская или бронирование авиабилетов. Автоматизация тестирования в этом плане практически не отличается от других сервисов, особенно, если она развивается в крупной компании. При этом нужно учесть стек технологий и уровень развития проекта и при этом не наступить на те грабли, что мы собрали при автоматизации тестирования других продуктов. Как строить такой сервис, как его адаптировать под различные команды и получать предсказуемый результат, именно про эти вопросы Павел расскажет в своем докладе. И все это на примерах из 2ГИС.
Держим дизайн системы под контролем, используя изолированное юнит-тестировани...Ontico
РИТ++ 2017, Backend Conf
Зал Кейптаун, 6 июня, 10:00
Тезисы:
http://backendconf.ru/2017/abstracts/2637.html
Код наших систем со временем загнивает из-за низкого качества обратной связи, которую дают интегрированные тесты.
Под интегрированными тестами я подразумеваю юнит-тесты, прохождение или падение которых зависит более чем от одной единицы нетривиального поведения. Очень часто в индустрии мы вместо быстрых и изолированных юнит-тестов пишем тесты, которые запускают на исполнение большие объемы кода или общаются с базой данных через ActiveRecord.
...
QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?QAFest
Дорогие начинающие коллеги-тестировщики! Уважаемые коллеги со „средним“ стажем! В данном докладе я постараюсь поменять ваше традиционно неполное, и местами неверное представление о том, зачем и для чего мы занимаемся тестированием, и может быть даже достучаться до сердец некоторых сеньоров нашего ремесла.
Курсы, ISTQB, Википедия, скороспелые статьи на коммерческих и бесплатных сайтах, и знаменитые „исторические причины“ - внесли неоценимый вклад в дело хаоса понятий и поверхностности „лучших практик“ в области тестирования.
В докладе я донесу свой взгляд на современное тестирование, который поддерживают некоторые из очень ведущих специалистов. Понимание целей поможет вам стать лучшими тестировщикам и не только. Давайте сдвигать парадигму вместе уже сегодня! Так победим.
Keyword-driven testing, Геннадий Алпаев
Keyword-driven подход к автоматизации тестирования был описан в литературе более 10ти лет назад, однако в русскоязычных источниках по этой теме информации довольно мало. В докладе Геннадий расскажет о том, в чем заключается подход, когда применяется, его достоинства и недостатки, а также покажет пример практической реализации Keyword-driven подхода для простого тестируемого приложения с помощью TestComplete и SilkTest.
Автоматизация тестирования как сервис, Павел Сташевский
Все мы хотим получать качественные сервисы. Мы хотим, чтобы обслуживание было быстрым, качественным и недорогим. Нам важно получить удовольствие от сервиса, будь то парикмахерская или бронирование авиабилетов. Автоматизация тестирования в этом плане практически не отличается от других сервисов, особенно, если она развивается в крупной компании. При этом нужно учесть стек технологий и уровень развития проекта и при этом не наступить на те грабли, что мы собрали при автоматизации тестирования других продуктов. Как строить такой сервис, как его адаптировать под различные команды и получать предсказуемый результат, именно про эти вопросы Павел расскажет в своем докладе. И все это на примерах из 2ГИС.
Держим дизайн системы под контролем, используя изолированное юнит-тестировани...Ontico
РИТ++ 2017, Backend Conf
Зал Кейптаун, 6 июня, 10:00
Тезисы:
http://backendconf.ru/2017/abstracts/2637.html
Код наших систем со временем загнивает из-за низкого качества обратной связи, которую дают интегрированные тесты.
Под интегрированными тестами я подразумеваю юнит-тесты, прохождение или падение которых зависит более чем от одной единицы нетривиального поведения. Очень часто в индустрии мы вместо быстрых и изолированных юнит-тестов пишем тесты, которые запускают на исполнение большие объемы кода или общаются с базой данных через ActiveRecord.
...
QA Fest 2016. Алексей Виноградов. Цель тестирования. А на самом деле?QAFest
Дорогие начинающие коллеги-тестировщики! Уважаемые коллеги со „средним“ стажем! В данном докладе я постараюсь поменять ваше традиционно неполное, и местами неверное представление о том, зачем и для чего мы занимаемся тестированием, и может быть даже достучаться до сердец некоторых сеньоров нашего ремесла.
Курсы, ISTQB, Википедия, скороспелые статьи на коммерческих и бесплатных сайтах, и знаменитые „исторические причины“ - внесли неоценимый вклад в дело хаоса понятий и поверхностности „лучших практик“ в области тестирования.
В докладе я донесу свой взгляд на современное тестирование, который поддерживают некоторые из очень ведущих специалистов. Понимание целей поможет вам стать лучшими тестировщикам и не только. Давайте сдвигать парадигму вместе уже сегодня! Так победим.
Keyword-driven testing, Геннадий Алпаев
Keyword-driven подход к автоматизации тестирования был описан в литературе более 10ти лет назад, однако в русскоязычных источниках по этой теме информации довольно мало. В докладе Геннадий расскажет о том, в чем заключается подход, когда применяется, его достоинства и недостатки, а также покажет пример практической реализации Keyword-driven подхода для простого тестируемого приложения с помощью TestComplete и SilkTest.
XP Days Ukraine 2014 - Refactoring legacy codeDmytro Mindra
Every programmer has to face legacy code day after day. It might be ugly, it might look scary, it can make a grown man cry. Some will throw it away and try rewriting everything from scratch. Most of them will fail.
Refactoring legacy code is a much better idea. It is not so scary when you take it in very small bites, introduce small changes, add unit tests. When code is refactored and unit tests are added, changes to functinality can be introduced.
We will take an open source C# project and will refactor it showing step-by-step examples of the techniques. This session is full of tips and tricks you can start applying immediately. Although the code is in C#, the same principles can be applied in any language.
Доклад Александра Макарова для Съесть собаку #10: PHP, 12/10/2017.
Тезисы:
- Что такое архитектура сайта и зачем она нужна
- Виноват ли фреймворк в плохой архитектуре
- Где выход из сложности и регрессий
- Что делать со сложным доменом
- Выводы.
Netpeak Group продолжает серию образовательных мероприятий — #NetpeakTalks в Одессе.
В рамках этих встреч у тебя будет возможность обсудить с практикующим спикером наболевшие темы, связанные с R&D, дизайном, менеджментом, интернет-маркетингом, QA, Customer Success, аналитикой и др. (все темы от встречи к встрече не повторяются и отличаются друг от друга).
Тема#3: Масштабируемое приложение на PHP
Краткий план:
1. Теория принципов и паттернов проектирования.
2. Примеры использования принципов и паттернов в коде (разберём какие "плюшки" даёт каждый случай).
3. Важность слабосвязанного кода (IoC).
4. Как "под капотом" работают IOC контейнера.
_____________________
Информацию об этом и следующих мероприятиях ты можешь отследить:
FaceBook: https://www.facebook.com/NetpeakTalks/
Телеграм: https://t.me/netpeaktalks
__________
Плейлист с выступлениями на YouTube: https://www.youtube.com/playlist?list=PL8LIMl0TjrcDtSS_lM5jqH-huK5FCq44A
__________
Юнит тестирование, Александр Прукс, 30 Марта 2014ForkConf
Модульное тестирование, или юнит-тестирование (англ. unit testing) — процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы.
Идея состоит в том, чтобы писать тесты для каждой нетривиальной функции или метода. Это позволяет достаточно быстро проверить, не привело ли очередное изменение кода к регрессии, то есть к появлению ошибок в уже оттестированных местах программы, а также облегчает обнаружение и устранение таких ошибок.
Видео: http://www.youtube.com/watch?v=vz0U3jQpHSM
Это обзор опыта применения лучших практик разработки программного обеспечения на разных проектах от госзаказов до видеоконференций в командах от 5 до 50 человек. В докладе будут описаны не только практики, но и то, как они применяются на реальных проектах и какие выгоды они действительно приносят.
1. SOLIDный код:
с TDD это просто
Сергей Калинец http://tdd4.net
Skype: sergiikalinets
@skalinets
2. Обо мне
• Более 10 лет в промышленной разработке
• Руковожу разработкой в киевском офисе
компании CompatibL
• Тренер по инженерным практикам в
scrumguides.com
• Ведущий клуба практической разработки в
stratoplan.ru
21. Single Responsibility: Test
• Данные
– Что знает?
– Какие связи
между объектами
поддерживает?
• Поведение
– Что решает?
– Какие услуги
предоставляет?
27. Liskov Substitution
• Предусловия не могут быть ужесточены в
наследнике
• Постусловия не могут быть ослаблены в
наследнике
• Инварианты базового типа должны
соблюдаться и в наследнике
• Исторические ограничения
28. Liskov Substitution и TDD
• Тесты могут проверять использование
наследников вместо предков
• В случае нарушения юнит тесты
усложняются
30. Interface Segregation
• Utility Modules should be included
полностью
• Тесты на страже Extract interface/base class
• Тестовые дублёры могут скрывать
нарушения
32. Interface Segregation и TDD
• Тестовые дублеры диктуют API
• Тесты усложняются, когда зацепление
понижается
• Тесты обезбаливают разбиение
интерфейсов
33. Dependency Inversion
• Высокоуровневые модули не должны
зависеть от низкоуровневых. Оба должны
зависеть от абстракций.
• Абстракции не должны зависеть от
деталей. Детали должны зависеть от
абстракций.
34. Dependency Inversion и TDD
• Service Locator или Dependency Injection?
• Двойники в TDD создают абстракции
• Настройка тестов легче с Dependency
Injection
Надиктовано КОВелосипед не изобретенОднако на практике редко был замечен – собеседования, общение на встречах и конференциях, тренингах.Добавляется простота и предсказуемость. Это не значит, что сложного нельзя сделать, это значит, что сложные вещи делаются просто.
Проект с нуля,TDD c нуля, учились на своем опыте
Аналогия – нормализированные модели DB.Нарушение приводит к Хрупкому дизайнуКритика: несовместимость с реальным миром, крайности реализации
Вам пофик, сколько лошадей, какой объем двигателя и тип подвески.Если после нажания на тормоз не тормозит -- ВНЕЗАПНО
History: mutable point
High Cohesion
Что общего? Это аббревиатурыЧто разного? Solid это аббревиатура аббревиатур, а не – просто фразы