- PVSM.RU - https://www.pvsm.ru -

Курс от Яндекса о том, что должен знать каждый разработчик, который хочет делать большие системы. Модное слово DevOps и другое

Всю рутину, которую можно отдать роботам, нужно отдать роботам. Большие системы без этого невозможны. В разработке и тестировании очень много похожих задач, которые не требуют высокой квалификации, но отнимают много времени. Человек, который умеет обеспечить разработку, тестирование и деплой – это редкий специалист и его на количество этих страничек никак не масштабируешь.

В Яндексе тестировщику невозможно без автоматизации. Мы даже развиваем экспериментального робота [1], который способен брать на себя функциональное тестирование. В какой-то момент мы поняли, что не так много людей осознают, сколько сейчас есть возможностей работать не 12 часов, а головой. Собрав весь свой опыт в тестировании и деплое, мы открыли в питерском офисе Яндекса Школу автоматизации процессов разработки [2]. У нас получилась школа, где каждый, кто пишет код, может получить базовый набор знаний о том, как собрать, запустить и поддерживать сервис в продакшене так, чтобы это стоило недорого.

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

Сейчас занятия закончились, и мы, как и обещали [3], выкладываем записи лекций, которые перемежаются с мастер-классами, для всех желающих. Понятно, что наш опыт и знания – не 42, но мы надеемся, что они принесут вам пользу.

Системы хранения исходного кода

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

В лекции Марат расскажет, зачем вообще нужны системы хранения исходного кода, их историю и уделит отдельное внимание рассказу о Git и Github.

Автоматизация сборки Java-проекта

Иван Крутовзанимается вопросами, связанными с применением облачных технологий для целей тестирования. Он один из разработчиков проекта Allure Framework [4]. Он служит для получения отчетов о прохождении автотестов. Отчеты отображают информацию в понятном виде и для тестировщиков, и для менеджеров проекта. К ним можно прикладывать скриншоты, логи и любые другие файлы. Allure позволяет [5] разбивать сложные тесты на шаги, включать информацию о параметрах тестов и тестового окружения.

Из лекции вы узнаете, почему промышленная разработка невозможна без использования инструментов сборки, услышите краткую историю их развития. Иван расскажет о наиболее популярных инструментах сборки для Java-платформы и некоторых других языков программирования, поговорит об основных возможностях Maven.

Инструменты непрерывной интеграции

Денис dchr [6] Чернилевский руководит работой команды, которая занимается тестированием системы медийной рекламы и Яндекс.Браузера. У Дениса есть опыт и в интернет-сервисах, и в софтовых продуктах. В Яндексе он с 2012 года, а до этого четыре года был сначала инженером, а потом руководителем в Parallels.

Лекция посвящена основам автоматизации различных процессов при разработке ПО. Она о том, что и для чего можно автоматизировать, какими инструментами для этого стоит пользоваться. Представлены несколько самых популярных CI-систем, на основе которых можно строить всю дальнейшую автоматизацию.

Автоматизация тестирования

Эту лекцию читаю я. Я в Яндексе уже шесть лет.

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

Фреймворки автоматизации тестирования

Леонид Руденко руководит командой, которая отвечает за автоматизацию тестирования поисковых интерфейсов. Сам он закончил физфак СПбГУ, пришел в Яндекс в 2010 году стажером, а сейчас – ведущий инженер.

Все хотят писать тесты быстро и понятно, легко запускать их и анализировать результаты. Лёня расскажет, какие инструменты позволяют наладить процесс создания автотестов и что выбрать, чтобы не прогадать? В лекции вы познакомитесь с идеологией xUnit, а также Java-фреймворками JUnit и TestNG.

Отчеты автотестов

Дмитрий Баев – выпускник ИТМО. В Яндексе уже более двух лет. Занимается разработкой инструментов тестирования. Один из разработчиков Allure — фреймворка для получения отчетов о прохождении тестов.

Зачем нужны отчёты автотестов, какими они бывают и какой выбрать? В лекции вы познакомитесь с системами Surefire, Thucydides, Allure, а также узнаете, как сделать свой отчёт.

Запахи тестов

Кирилл Lanwen [7] Меркушев пришел в Яндекс стажером в начале 2012 года. Начинал с автоматизации тестирования Яндекс.Почты. Сейчас его команда занимается автоматизацией тестирования персональных сервисов Яндекса: внутренних почтовых компонентов, Почты, Диска. Очень любит OpenSource и Jenkins.

Из лекций Кирилла вы узнаете, почему тестовый проект требует внимания больше, чем приносит пользы, от чего страдают некачественные тесты и как это «почуять». То есть как не автоматизировать все так, чтобы после этого стало хуже, чем было. Вы узнаете о необходимой профилактике, которая поможет избежать проблем с тестами.

Статический анализ кода

Артём art_koshelev [8] Кошелев – один из создателей фреймворка Allure и человек, который отвечает за тестирование самой посещаемой страницы рунета – главной Яндекса. Работает в Яндексе уже больше пяти лет.

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

Покрытие кода

Илья Садыков в Яндексе около года. Он не только разрабатывает внутренние инструменты автоматизации процессов тестирования, но и различные открытые проекты команды qatools. Кандидат технических наук.

Это лекция о способах измерить качество тестирования кода. Подробный рассказ о тестовом покрытии и факторах, которые на него влияют. Илья затронет инструменты для измерения тестового покрытия и особенности их работы, и расскажет о возможностях, которые даёт инструментирование кода.

Нагрузочное тестирование

Олесь doctornkz [9] Писаренко в Яндексе уже шесть лет. При нем у нас появился Танк [10] и Лунапарк [11], о которых он рассказывал [12]. Сейчас он руководит нагрузочным тестированием и занимается поддержкой нашего опенсорсного Танка. Это инструмент для нагрузочного тестирования и анализа производительности веб-сервисов и приложений. Танк был разработан в Яндексе в 2006 году для проверки на прочность баннерной системы. Сейчас это один из основных инструментов измерения производительности.

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

Как я говорил, помимо лекций у нас еще проводились мастер-классы. Для тех, кому удобнее смотреть их подряд вместе с лекциями, мы собрали отдельный плейлист с материалами Школы в канале Яндекс.Образование [13], где и дальше будут выкладываться материалы всех наших образовательных проектов.

Автор: eroshenkoam

Источник [14]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/testirovanie/77225

Ссылки в тексте:

[1] развиваем экспериментального робота: http://habrahabr.ru/company/yandex/blog/221379/

[2] Школу автоматизации процессов разработки: https://academy.yandex.ru/events/autoschool/spb-2014/

[3] как и обещали: http://habrahabr.ru/company/yandex/blog/237017/#comment_7972447

[4] Allure Framework: https://tech.yandex.ru/allure/

[5] позволяет: http://habrahabr.ru/company/yandex/blog/232697/

[6] dchr: http://habrahabr.ru/users/dchr/

[7] Lanwen: http://habrahabr.ru/users/lanwen/

[8] art_koshelev: http://habrahabr.ru/users/art_koshelev/

[9] doctornkz: http://habrahabr.ru/users/doctornkz/

[10] Танк: https://tech.yandex.ru/tank/

[11] Лунапарк: http://habrahabr.ru/company/yandex/blog/202446/

[12] он рассказывал: http://habrahabr.ru/company/yandex/blog/202020/

[13] в канале Яндекс.Образование: http://www.youtube.com/playlist?list=PLJMRN_6MT0JYItlUeor7YRa0r6-lI8MMR

[14] Источник: http://habrahabr.ru/post/245869/