Доступно

[Software-Testing.RU] Программирование на Java для тестировщиков, 2016 (Алексей Баранцев)

Тема в разделе "Курсы по программированию"

Цена:
15300 руб
Взнос:
490 руб
Организатор:
Dr.Vatson

Список участников складчины:

1. Dr.Vatson 2. Shtanka 3. katya_tv 4. Klukovka 5. Михаил_diz 6. Yamagu 7. katatka 8. Mania123 9. einigen 10. тётя Moтя 11. tema7779 12. Zoe888 13. Ar2r 14. natalik2410 15. alexa_ural
Купить
  1. Dr.Vatson Организатор складчин

    [Software-Testing.RU] Программирование на Java для тестировщиков, 2016 (Алексей Баранцев)

    [​IMG]

    Программирование для тестировщиков
    Тренер:
    Баранцев Алексей

    Этот курс предназначен для обучения тестировщиков программированию на языке Java
    Да, это курс именно для тестировщиков. Обучение программированию не сводится только к изучению языка программирования. Построение правильной архитектуры, использование фреймворков и библиотек, владение инструментами разработки и отладки -- это тоже часть “умения программировать”. Поэтому в этом курсе детально рассматриваются именно те возможности языка и вспомогательных библиотек, которые наиболее востребованы при разработке автотестов, в том числе при тестировании веб- и windows-приложений через пользовательский интерфейс.

    Изучаемый материал будет демонстрироваться на едином сквозном примере -- мы будем разрабатывать на языке Java автоматизированные тесты для веб-приложения, используя Selenium WebDriver. Начав с простого теста, записанного “рекордером”, мы будем постепенно усложнять архитектуру тестового набора, добавлять и усиливать проверки в тестах, дополнять тесты генераторами тестовых данных. Основной акцент будет сделан не на алгоритмы, а на изучение различных полезных библиотек и фреймворков, а также шаблонов проектирования, позволяющих организовать код автоматизированных тестов таким образом, чтобы его было легко модифицировать и расширять.

    Но одним примером мы не ограничимся, для закрепления материала мы в течение курса построим "в едином стиле" несколько проектов с тестами для приложений разного типа, научимся тестировать приложения через веб-интерфейс, пользовательский интерфейс Windows, интерфейс доступа к базам данных, сетевые интерфейсы (почта, HTTP, веб-сервисы).

    И напоследок научимся делать тесты на "естественном" языке Gherkin. Да, не удивляйтесь, чтобы делать тесты на "естественном" языке -- нужно уметь программировать :)

    1. Основы программирования
    Большинство учебников и курсов по программированию начинаются с написания простейшей программы, которая выводит на консоль слова “Hello, world!”. Мы не станем нарушать эту традицию, потому что первым делом нужно подготовить среду разработки и убедиться, что всё установлено и настроено правильно. Попутно мы научимся использовать сервис GitHub для хранения исходного кода проекта.

    В первом занятии будут рассмотрены базовые конструкции языка программирования Java -- классы и объекты, переменные и функции. Заодно научимся пользоваться отладчиком. Но до создания тестов так и не доберёмся.

    2. Двухуровневая архитектура тестового набора
    Затем мы сразу совершим “прыжок” -- вместо того, чтобы постепенно усложнять свою первую примитивную программу, мы запишем “рекордером” готовый тест для веб-приложения, перенесём его в среду разработки, подключим все необходимые вспомогательные библиотеки, а потом будем его улучшать.

    Автотесты “системного” уровня (в отличие от “unit-тестов”) удобно разделить на два слоя -- 1) собственно тесты, 2) код, ответственный за взаимодействие с тестируемой системой, причём вторая часть, как правило, является более сложной технически.

    Мы научимся создавать такую двухуровневую архитектуру путём плавной трансформации ранее созданных при помощи “рекордера” простых одноуровневых тестов, и познакомимся с понятием “рефакторинга” кода.

    На этом же этапе мы познакомимся с базовыми возможностями тестового фреймворка TestNG.

    А после того, как двухуровневая архитектура будет выстроена -- добавим пару новых тестов уже без использования рекордера.

    3. Управление потоком выполнения кода: условный переход
    Условный переход (if-then) -- это одна из основных конструкций языка программирования, позволяющая программе вести себя по разному в разных условиях.

    Мы научимся использовать эту конструкцию для того, чтобы менять поведение программы в зависимости от ситуации (есть на странице тестируемого веб-приложения нужный элемент или нет) и от входных данных (определено значение некоторой переменной или нет), для оптимизации тестов (уже попали на нужную страницу приложения или нет) и для повышения их гибкости и надёжности.

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

    Однако чаще циклы используются при работе с “коллекциями” -- списками и множествами объектов какого-то типа. Мы научимся строить и модифицировать коллекции, сравнивать и сортировать их, а также реализовывать в тестах сложные проверки, в которых участвуют коллекции объектов.

    5. Работа со строками
    Строки -- один из самых широко распространённых типов данных, с которым приходится иметь дело в тестах, особенно если тестирование выполняется через пользовательский интерфейс. Конечно, эти строки могут представлять собой числа или даты или объекты какого-то другого типа, но из тестируемого приложения мы получаем их именно в виде строк, так что перед дальнейшим использованием их ещё нужно правильно преобразовать в нужный тип данных.

    Мы научимся сравнивать строки, проверять их на соответствие регулярным выражениям, преобразовывать строки в числа и обратно, а также генерировать строки, состоящие из случайного набора символов.

    А затем доработаем тесты -- сделаем их параметризованными и свяжем их с генераторами тестовых данных. Такой подход называется Data Driven Testing (DDT).

    6. Работа с файлами
    Файлы -- это место, где можно хранить тестовые данные. Поэтому в контексте разработки автотестов важно уметь читать данные из файлов разного формата. С другой стороны, создавать тестовые данные тоже не обязательно вручную, можно написать программу, которая их будет генерировать и сохранять в файл нужного формата.

    Мы научимся читать данные из файлов в формате CSV, XML, JSON, а также писать данные в файл в этих форматах.

    7. Работа с базами данных
    Подавляющее большинство многопользовательских приложений (к которым относятся и веб-приложения), а также многие однопользовательские приложения, используют базы данных для хранения информации. Когда пользователь вводит какую-то информацию через интерфейс приложения, она после некоторой обработки попадает в базу данных и хранится там до тех пор, пока она не потребуется для работы того же самого или или какого-то иного приложения. При тестировании часто бывает удобно проверить, правильно ли сохранилась информация в базе данных. Поэтому многие тестировщики, даже не умея программировать, достаточно хорошо владеют языком запросов к базе данных SQL.

    Сначала мы научимся пользоваться технологией доступа к базам данных, которая позволяет выполнять привычные SQL-запросы и анализировать полученный ответ как таблицу. Затем мы освоим более современную технологию объектно-реляционных преобразований.

    8. Сетевое программирование: протоколы прикладного уровня
    С одной стороны, это занятие будет повторением пройденного материала. Мы построим новый тестовый набор с двухуровневой архитектурой для нового тестируемого приложения. Однако всё взаимодействие с тестируемым приложением будет происходить в обход пользовательского интерфейса.

    В этом занятии будут рассмотрены механизмы работы с сетевыми протоколами для отправки и получения почты POP3 и SMTP, протоколом для отправки и получения файлов FTP, протоколом для удалённого выполнения команд Telnet, а также традиционным протоколом, используемый для взаимодействия с веб-приложениями HTTP.

    Для веб-приложений характерным случаем является использование электронной почты -- отправка ссылки для подтверждения регистрации, восстановление пароля, оповещения о каких-либо событиях. Для тестирования такого рода функциональности мы научимся работать с почтовым сервером из автоматизированных тестов: принимать и отправлять почту, анализировать содержимое почтовых сообщений. Настройка приложения, находящегося на удалённом сервере, может потребовать умения загружать туда файлы по протоколу FTP.

    9. Сетевое программирование: удалённые программные интерфейсы
    И ещё одно занятие-повторение, в котором мы опять построим новый тестовый набор для нового учебного приложения, чтобы закрепить навык создания типовой двухуровневой архитектуры.

    А затем научимся работать с удалёнными программными интерфейсами SOAP и REST. Технология SOAP чаще используется в крупных “промышленных” приложениях, а технология REST более характерна для современных веб-сервисов.

    10. Тестовые фреймворки и инфраструктура
    Последнее занятие будет посвящено рассмотрению альтернативных тестовых фреймворков, в том числе инструмента Cucumber для разработки тестов на "естественном" языке Gherkin и инструмента Robot Framework для разработки тестов в стиле Keyword Driven Testing.

    Кроме того, мы научимся запускать тесты на сервере непрерывной интеграции Jenkins и генерировать красивые отчёты при помощи инструмента Allure.

    Содержание складчины (файлы и папки)
    01 Основы программирования
    01 Обзор языков программирования и место Java в общей картине мира.mp4 [49m 859k 956]
    02 Установка и настройка Java SDK.mp4 [28m 34k 950]
    03 Первая работающая программа на языке Java.mp4 [15m 314k 552]
    04 Хранение кода Git и GitHub.mp4 [23m 855k 538]
    05 Gradle и другие сборщики.mp4 [34m 711k 973]
    06 Среда разработки IntelliJ IDEA.mp4 [25m 925k 710]
    07 Классы и пакеты, файлы и директории.mp4 [17m 912k 835]
    08 Фигурные скобочки и структура программного кода.mp4 [32m 694k 273]
    09 Выражения и операции.mp4 [26m 862k 174]
    10 Переменные и значения.mp4 [24m 904k 187]
    11 Типы переменных и значений.mp4 [13m 210k 533]
    12 Среда разработки. Запуск программы режиме отладки.mp4 [13m 606k 97]
    13 Функции.mp4 [28m 74k 969]
    14 Классы и объекты.mp4 [34m 620k 79]
    15 Методы. Функции, ассоциированные с объектами.mp4 [17m 770k 547]
    pluginfile.pdf [2m 497k 943]
    Thumbs.db [35k 840]
    ДЗ.txt [1k 862]
    Ссылки на инструменты, упомянутые в лекциях.txt [390]

    02 Двухуровневая архитектура тестового набора
    01 Немного теории что такое автотесты.mp4 [18m 559k 415]
    02 Gradle подключаем зависимости от дополнительных библиотек.mp4 [20m 262k 209]
    03 Делаем первый тест, используя фреймворк для запуска тестов TestNG.mp4 [18m 957k 737]
    04 Среда разработки IDEA полезные клавиатурные сочетания.mp4 [15m 431k 313]
    05 Делаем тест для веб-приложения, используя драйвер Selenium.mp4 [32m 377k 386]
    06 Фикстуры инициализация и зачистка.mp4 [15m 565k 353]
    07 Рефакторинг улучшаем читаемость кода, выделяем вспомогательные методы.mp4 [32m 141k 269]
    08 Создаём общий базовый класс для тестов, где можно хранить методы, общие для всех тестов.mp4 [43m 595k 178]
    09 Заменяем наследование на делегирование и создаём двухуровневую архитектуру.mp4 [53m 168k 904]
    10 Выделяем специализированные классы-помощники.mp4 [41m 856k 281]
    11 Создаём общий базовый класс для классов-помощников.mp4 [31m 632k 137]
    12 Делаем новый тест без использования рекордера.mp4 [22m 402k 35]
    ДЗ.txt [4k 190]

    5.0 Подготовка к разработке тестов для веб-приложений
    5.1.png [50k 269]
    addressbook.zip [599k 111]
    Видеоинструкция по установке учебного приложения.mp4 [6m 10k 635]
    Подготовка к разработке тестов для веб-приложений.txt [1k 518]

    Доп. материалы
    Thumbs.db [6k 656]
    Ссылки.txt [247]
    Фрагмент курса. selenium_start_02_02_xpath_and_css.mp4 [15m 19k 460]

    03 Управление потоком выполнения кода, ветвление
    01 Проверка условий при помощи конструкции if-then-else.mp4 [32m 601k 141]
    02 Полная форма if-then-else. Неполная форма if-then. Вложенные проверки. Свёртка вложенных проверок.mp4 [27m 870k 967]
    03 Запуск тестов в разных браузерах.mp4 [41m 536k 233]
    04 Сравнение объектов при помощи оператора == и метода equals.mp4 [21m 131k 675]
    05 Оптимизация заполнения форм - оставляем дефолтные значения в полях.mp4 [11m 890k 152]
    06 Оптимизация заполнения форм - оставляем не изменяющися значения в полях.mp4 [16m 488k 494]
    07 Перехват исключений.mp4 [31m 198k 60]
    08 Заполнение форм с почти одинаковым набором полей.mp4 [41m 714k 939]
    09 Ленивые действия.mp4 [28m 571k 154]
    10 Проверка и обеспечение выполнения предусловий.mp4 [28m 496k 31]
    Thumbs.db [52k 224]
    ДЗ.txt [791]
    Ссылки.txt [362]

    04 Коллекции и циклы
    01 Циклы.Многократные повторения похожих действий.mp4 [51m 83k 937]
    02 Коллекции. Наборы элементов.mp4 [34m 776k 270]
    03 Количество элементов в коллекции.mp4 [27m 744k 163]
    04 Выбор элемента списка по порядковому номеру.mp4 [11m 942k 973]
    05 Формирование коллекции.mp4 [31m 490k 430]
    06 Сравнение коллекций.mp4 [32m 926k 45]
    07 Множества. Неупорядоченные коллекции.mp4 [44m 139k 864]
    08 Поиск максимального элемента в коллекции.mp4 [26m 773k 743]
    09 Лямбда-выражения (анонимные функции) и элементы функционального программирования.mp4 [36m 200k 646]
    10 Сортировка списков.mp4 [30m 376k 737]
    Thumbs.db [26k 624]
    ДЗ.txt [411]

    05 Улучшение кода тестов. Работа со строками
    01 Как правильно запускать браузер.mp4 [40m 246k 917]
    02 Улучшение кода тестов - ещё немного реструктуризации кода.mp4 [24m 842k 56]
    03 Улучшение названий методов.mp4 [22m 696k 33]
    04 Fluent-интерфейсы.mp4 [24m 434k 254]
    05 Повсеместное использование уникальных идентификаторов объектов.mp4 [62m 293k 906]
    06 Hamcrest - улучшение внешнего вида проверок.mp4 [43m 957k 983]
    07 Кеширование результатов длительных операций.mp4 [19m 264k 647]
    08 Хеширование и предварительные проверки.mp4 [24m 583k 840]
    09 Способы построения сложных локаторов.mp4 [36m 169k 629]
    10 Режем строки (и немного про регулярные выражения).mp4 [31m 271k 360]
    11 Клеим строки - метод обратных проверок.mp4 [37m 257k 910]
    Thumbs.db [27k 136]
    ДЗ.txt [1k 692]
    Ссылки.txt [236]

    06 Работа с файлами
    01 Пути к файлам и директориям.mp4 [50m 974k 958]
    02 Генератор тестовых данных, запись данных в файл.mp4 [35m 319k 644]
    03 Анализ опций командой строки при запуске генератора данных.mp4 [27m 678k 492]
    04 Параметризация тестовых методов.mp4 [33m 13k 37]
    05 Загрузка тестовых данных из файла.mp4 [26m 29k 818]
    06 Формат XML.mp4 [45m 223k 403]
    07 Формат JSON.mp4 [37m 386k 836]
    08 Автоматическое закрытие файлов после использования.mp4 [13m 24k 752]
    09 Конфигурационные файлы для описания тестовых наборов.mp4 [27m 234k 239]
    10 Описание конфигурации тестового стенда.mp4 [40m 821k 427]
    11 Протоколирование (лог-файлы).mp4 [51m 987k 663]
    Thumbs.db [34k 304]
    ДЗ.txt [973]

    07 Работа с базами данных
    01 Драйвер базы данных. Получение данных из БД.mp4 [41m 41k 230]
    02 Object Relational Mapping (ORM).mp4 [78m 676k 986]
    03 Условия отбора данных.mp4 [32m 818k 190]
    04 Сравнение данных, загруженных из БД.mp4 [43m 306k 11]
    05 Отключаемые проверки UI.mp4 [39m 205k 663]
    06 Связи между объектами.mp4 [54m 145k 321]
    Thumbs.db [14k 848]
    ДЗ.txt [909]

    08 Сетевое программирование. Протоколы прикладного уровня
    01 Установка нового учебного приложения MantisBT.mp4 [20m 812k 829]
    02 Подготовка проекта для тестирования MantisBT.mp4 [31m 688k 333]
    03 Прямое взаимодействие с сервером по протоколу HTTP.mp4 [47m 281k 826]
    04 Ленивая инициализация помощников.mp4 [26m 577k 883]
    05 Передача файлов на удалённую машину по протоколу FTPmp4.mp4 [40m 185k 394]
    06 Получение почты на встроенный в тесты почтовый сервер.mp4 [70m 600k 944]
    07 Получение почты на внешний почтовый сервер.Создание пользователей на внешнем почтовом сервере по протоколу.mp4 [0]
    ДЗ.txt [1k 520]
    Ссылки.txt [312]

    09 Сетевое программирование - удалённые программные интерфейсы
    01 Немного теории про Remote API.mp4 [42m 145k 969]
    02 SOAP - простой пример.mp4 [38m 288k 788]
    03 SOAP - взаимодействие с MantisBT.mp4 [78m 54k 936]
    04 REST - взаимодействие с Bugify.mp4 [74m 751k 1]
    05 RestAssured - использовать или нет.mp4.mp4 [23m 936k 261]
    06 REST - взаимодействие с GitHub.mp4 [37m 288k 593]
    ДЗ.txt [2k 316]

    10 Тестовые фреймворки и инфраструктура
    01 Сервер непрерывной интеграции.mp4 [64m 293k 620]
    02 Удалённый запуск браузера (Selenium Server).mp4 [50m 306k 395]
    03 Конфигурационное тестирование (Selenium Grid).mp4 [63m 493k 873]
    04 Генерация отчётов при помощи Allure.mp4 [82m 773k 17]
    05 Keyword Driven Testing и инструмент Robot Framework.mp4 [63m 350k 665]
    06 Behaviour Driven Testing и инструмент Cucumber-JVM.mp4 [65m 194k 633]
    ДЗ.txt [419]
    Ссылки.txt [400]

    Объем: 3,15Гб.

    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
     
  2. Похожие складчины
    Загрузка...
  3. psyho86 Складчик
    курс еще актуален? пройден?
     
    psyho86,
  4. Dr.Vatson Организатор складчин
    .
     
    Последнее редактирование: 13 апр 2020
    Dr.Vatson,
  5. Arzy Гость
    Имя и фамилию автора добавьте пожалуйста в наименование темы и в метки
     
    Arzy,
  6. Дайнерис Модератор
    Здравствуйте. По каким то причинам организатор удалил дату сборов. Складчина снова на записи, ждите информации от организатора и даты сборов.
     
    Дайнерис,
    Dr.Vatson нравится это.
  7. Dr.Vatson Организатор складчин
    Уведомляем вас о начале сбора взносов.
    Цена продукта: 15300 руб. Взнос с каждого участника: 490 руб.
    Кол-во участников в основном списке: 5 чел.

    Начало сбора взносов 31 Август 2020 года
     
    Dr.Vatson,
  8. Голодный пират Складчик
    Это курс за 2016 год? Или новый?
     
    Голодный пират,
  9. Dr.Vatson Организатор складчин
    2016, если вам нужен свежий, то вам сюда:
    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
    (хотя, вряд ли они чем будут отличаться)
     
    Dr.Vatson,
  10. Голодный пират Складчик
    Может быть... но я купила Питон Баранцева за 2016, и там уже все устарело, на все надо искать старые версии. А на новых его приложение не работает. Очень неудобно.
     
    Голодный пират,
    Dr.Vatson нравится это.
  11. SandraW Организатор складчин
    _Beach [Skillbox] Профессия Java-разработчик
    1. Интересная работа и хороший заработок
    В мире каждый день запускается множество сайтов, веб-разработчик зарабатывает от 90 000 рублей. На языке Java создаются самые разнообразные проекты. От современных технологий до научных проектов, от мобильных приложений до нейронных сетей.
    2. Работа на самом востребованном языке
    Программы на Java используют более 3 миллиардов устройств в мире. Вы сможете создавать код, который будут запускать по всей планете от Москвы до Кейптауна и Токио. Добро пожаловать в XXI век.
    3. Свобода и мобильность
    Программист может работать удаленно. Всё, что ему нужно, это компьютер с подключением к интернету. Удалённая работа, свободный график ― выбор многих, кто устал от офисной пятидневки. Вы можете работать в компаниях всего мира.
    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
     
    SandraW,
    Leo. нравится это.
  12. adsl3008 Складчик
    Вышел курс по React.js.
    Состоит из 3-х частей:

    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...

    Вступайте!
     
    adsl3008,
  13. Leo. Активный складчик
    _Neo [Яндекс Практикум] Аналитик данных

    Начните зарабатывать, анализируя

    Что именно вы будете делать, когда станете аналитиком
    Выгружать, преобразовывать и очищать данные с помощью SQL-запросов.
    Создавать дашборды с помощью Tableau и других инструментов.
    Запускать А/В-тестирования для проверки гипотез.
    Рассчитывать ключевые метрики работы компании и оценивать их значимость.
    Помогать бизнесу принимать решения на основе данных.

    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
     
    Leo.,
Наверх