В этой презентации я рассказываю не только об автотестах, а о целом комплексе автоматических инструментов для обеспечения качества веб-сервиса на разных этапах разработки.
Как обеспечить проверку формата? Как поддерживать документацию в актуальном виде? Какую архитектуру выбрать для функциональных тестов?
Немного интересного про JSON-схемы и параметризованные тесты, про тестирование API методом чёрного ящика и про выбор исходных данных для тестирования.
В этой презентации я рассказываю не только об автотестах, а о целом комплексе автоматических инструментов для обеспечения качества веб-сервиса на разных этапах разработки.
Как обеспечить проверку формата? Как поддерживать документацию в актуальном виде? Какую архитектуру выбрать для функциональных тестов?
Немного интересного про JSON-схемы и параметризованные тесты, про тестирование API методом чёрного ящика и про выбор исходных данных для тестирования.
QA Fest 2017. Яна Кокряшкина. Интеграция автоматизированных тестов с инструме...QAFest
Как автоматически поставить тест кейсу статус "Pass", создать новый или зактрыть проверенный баг? Во время презентации расскажу как интегрировать автоматизированные тесты с инструментами для тестирования. Покажу рельные примеры совместной работы автоматизированных тестов для веб сайта, написаных на Java или Python, с YouTrack, TestRail и EasyQA.
Дело тестера боится: как в опытных руках могут заиграть Java и TestNgIT61
Вячеслав Марков, QA engineer в Weezlabs
Я расскажу о том, как в нашей фирме организовано тестирование бэкенда с помощью тестового фреймворка TestNG и Java. Расскажу о data-driven тестировании и о том, почему его удобно применять. Покажу и опишу разработанную нами структуру типового тестового проекта. Представлю применяемые нами способы сбора и документирования результатов, а так же их анализ в условиях CI.
Алексей Халайджи, Mail.Ru Group, «Как мы автоматизируем UI-тестирование в iOS...Mail.ru Group
Алексей рассказал, какие задачи и проблемы стояли перед командой в начале пути, какие технологии используются для автоматизации тестирования, какие проблемы при этом возникают и как решаются, а также поделится достигнутыми результатами.
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...Mail.ru Group
Доклад о том, с чего начать выстраивать конвейер автоматизации тестирования. Как не утопить автоматизацию в мнимых штампах и стереотипах, построив по-настоящему эффективный процесс автоматизации тестирования.
Поделюсь опытом и расскажу:
- о том, с чего начать автоматизацию тестирования;
- о том, что делает автоматизированные тесты выгодными;
- как научить "зарабатывать" автотесты;
- о том, как превратить точечное написание автоматизирвоанных тестов в стройный конвейер с отлаженными процессами;
- о популярных ошибках и заблуждениях автоматизации тестирования и о том, как их избегать;
- о сопутствующих инструментах и лайфхаках из практики.
Доклад содержит полезные советы, как для тех, кто только думает внедрить автоматизацию тестирования, так и для тех, кто уже вовсю автоматизирует, но сталкивается с проблемами их эффективной работы или желает сделать автотесты еще более полезными.
QA Fest 2017. Яна Кокряшкина. Интеграция автоматизированных тестов с инструме...QAFest
Как автоматически поставить тест кейсу статус "Pass", создать новый или зактрыть проверенный баг? Во время презентации расскажу как интегрировать автоматизированные тесты с инструментами для тестирования. Покажу рельные примеры совместной работы автоматизированных тестов для веб сайта, написаных на Java или Python, с YouTrack, TestRail и EasyQA.
Дело тестера боится: как в опытных руках могут заиграть Java и TestNgIT61
Вячеслав Марков, QA engineer в Weezlabs
Я расскажу о том, как в нашей фирме организовано тестирование бэкенда с помощью тестового фреймворка TestNG и Java. Расскажу о data-driven тестировании и о том, почему его удобно применять. Покажу и опишу разработанную нами структуру типового тестового проекта. Представлю применяемые нами способы сбора и документирования результатов, а так же их анализ в условиях CI.
Алексей Халайджи, Mail.Ru Group, «Как мы автоматизируем UI-тестирование в iOS...Mail.ru Group
Алексей рассказал, какие задачи и проблемы стояли перед командой в начале пути, какие технологии используются для автоматизации тестирования, какие проблемы при этом возникают и как решаются, а также поделится достигнутыми результатами.
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...Mail.ru Group
Доклад о том, с чего начать выстраивать конвейер автоматизации тестирования. Как не утопить автоматизацию в мнимых штампах и стереотипах, построив по-настоящему эффективный процесс автоматизации тестирования.
Поделюсь опытом и расскажу:
- о том, с чего начать автоматизацию тестирования;
- о том, что делает автоматизированные тесты выгодными;
- как научить "зарабатывать" автотесты;
- о том, как превратить точечное написание автоматизирвоанных тестов в стройный конвейер с отлаженными процессами;
- о популярных ошибках и заблуждениях автоматизации тестирования и о том, как их избегать;
- о сопутствующих инструментах и лайфхаках из практики.
Доклад содержит полезные советы, как для тех, кто только думает внедрить автоматизацию тестирования, так и для тех, кто уже вовсю автоматизирует, но сталкивается с проблемами их эффективной работы или желает сделать автотесты еще более полезными.
Мир мобильных телефонов очень сильно изменил нашу жизнь. В наше время невозможно представить современного человека, без этого чудо устройства. На рынке появляется все больше устройств и приложений. И чтобы удобнее пользоваться этими приложениями пользователи выбирают “умные” телефоны, или как их еще принято называть смартфоны. В своем докладе я хочу поделиться своим опытом автоматизации приложений под Android и iOS. Я расскажу о том, какие инструменты автоматизации я использовал. Поговорим о недостатках этих инструментов и какие из них стоит использовать у себя на проекте.
Как можно применить аспектно ориентированное программирование к шаблонам проектирования. Какие из них становится легче использовать? Какие полностью выносятся в шаблон и больше не являются частью вашей бизнес-логики.
Как создать более чистый код?
- на эти вопросы ответ в презентации.
Использование аспектов в реализации PostSharp к рефакторингу кода, к шаблонам банды четырех.
Большую часть инфраструктурного кода можно выделить и переиспользовать в других проектах.
Презентация мастер-класса "Создание динамических пользовательских интерфейсов и AJAX-приложений промышленного класса с помощью Dojo Toolkit и Zend Framework"
Ігор Карпиленко — PHPStorm for drupal developerLEDC 2016
Розгляд та аналіз інфструментів PHPStorm для drupal розробника: QA tools, Xdebug, Issue Tracking System, Drush, інструменти для роботи з Vagrant, Docker і базами даних. Корисні плагіни.
5. function add_action( . . . ) {
return add_filter( . . . );
}
https://core.trac.wordpress.org/browser/tags/4.2.2/src/wp-includes/plugin.php#L429
События и фильтры
это практически одно и то же
6. Почему именно события?
Какие преимущества даёт использование обработчиков событий
при разработке программного обспечения?
7. Зачем так сложно?
Если я скачал WordPress, я могу делать с ним что хочу, правда?
Почему бы не внести правки в чужой код напрямую?
10. Как быть, если хук уже используется?
add_action(
'init',
'lol_action_handler',
10 // приоритет - чем меньше, тем раньше,
// если одинаковый приоритет - FIFO
);
11. Что если нужно принять параметры?
add_filter(
'the_title',
'lol_title_filter',
10,
1 // количество параметров на входе
// функции-обработчика
);
12. Как быть, если я люблю ООП?
add_filter(
'the_title',
array( $object, 'lol_filter_method' )
// метод объекта
);
13. Как быть, если я люблю ООП?
add_filter(
'the_title',
array( 'Lmao_Rofl', 'lol_filter_method' )
// статический метод класса
);
14. Как быть, если я люблю PHP 5.3?
add_filter(
'the_title',
array( 'LolSpacelol_filter_method' )
// функция внутри пространства имён
);
15. Как быть, если я люблю PHP 5.3?
add_filter(
'the_title',
function() {
// анонимная функция
}
);
17. А если нужно вернуть простое
значение?
__return_true()
__return_false()
__return_zero()
__return_null()
__return_empty_string()
__return_empty_array()