1. Новые складчины

    21.02.2017: Оптимизация налогов и страховых взносов. Защита активов в 2016 г.

    21.02.2017: Выходить замуж за богатого или перспективного

    21.02.2017: Элитный курс «Психология и психофизиология питания»

    20.02.2017: [Новый поток] Женская система тайм-менеджмента «Успеваю все»

    20.02.2017: [Шитье] Уроки Татьяны Роговой

    20.02.2017: Хочешь быть красивой? Танцуй!

    20.02.2017: Шьем купальники для гимнастики

    20.02.2017: Шьем себе любимым

    17.02.2017: Роман Милованов (AWAKENING). Сердце. вебинар

    11.02.2017: Книга - Высокие технологии для сада и огорода

    07.02.2017: swSpyBrowser - интернет мультибраузер в каждой вкладке свои cookies, useragent и IP-адрес

    03.02.2017: Элитный курс «фитнес-нутрициолог»

    01.02.2017: Cosmic Power и канал исцеления в расстановках.

    31.01.2017: АВТОМАТИЧЕСКАЯ ПРОГРАММА для ставок на ФУТБОЛ, ХОККЕЙ И БАСКЕТБОЛ!!!

    31.01.2017: INSTASOFT 3.4.3.5

    29.01.2017: Остроумие, подшучивание, обаятельность. Как вести увлекательные беседы

    28.01.2017: Тарас Левчик - Арбитраж трафика и товарка (коучинг)

    26.01.2017: А. Маматов. Депрессия и панические атаки. январь 2017

    26.01.2017: Сергей Домогацкий - Путь

    24.01.2017: Вебинары К. Довлатова по "сказкам" с реинтеграциями

    21.01.2017: Как научиться писать так, чтобы тебя читали. Ермилова

    21.01.2017: Antidetect 6.50.2.2016

    17.01.2017: БроБот 2016.07.13

    16.01.2017: А. Иванов. Веб-аналитика для бизнеса (для чайников)

    12.01.2017: [Дуйко Андрей] Очарование Партнера 2

    07.01.2017: С. Ковалев. книга "Нейропрограммирование успешной судьбы" 2015

    04.01.2017: Кен Уилбер. Интегральная духовность

    25.12.2016: И. Ледоховский, Р. Мануэль. Мастер гипнотических историй. часть 2 из 3

    23.12.2016: Книга - А. Погорелый. 23 способа как заработать в интернете. 2016

    23.12.2016: Немецкий язык с нуля - Курс A1.1

    21.12.2016: Все для дома и сада. Летний интенсив(2016)

    21.12.2016: На двух приличных женщин один приличный мужчина

    21.12.2016: Ваша "цена" на брачном рынке

    21.12.2016: Ваш великий мужчина. Как его выбрать и не ошибиться?

    21.12.2016: Кинотренинг Феномен-Фильм "Хлоя"

    21.12.2016: Кинотренинг Феномен-Фильм "Суета сует"

    21.12.2016: Кинотренинг Феномен-Фильм "Клан Кеннеди" (Часть 2)

    21.12.2016: Кинотренинг Феномен-Фильм "Клан Кеннеди" (Часть 1)

    21.12.2016: Кинотренинг Феномен-Фильм "Невидимая сторона"

    21.12.2016: Кинотренинг Феномен-Фильм "Честная куртизанка"

    21.12.2016: Кинотренинг Феномен-Фильм "Москва слезам не верит"

    20.12.2016: Он, она и...деньги. Любовный треугольник

    20.12.2016: Великолепная семёрка для тюнинга мозга. Полонейчик

    16.12.2016: И. Ледоховский, Р. Мануэль. Мастер гипнотических историй. часть 1 из 3

    12.12.2016: В. Сибирцев. Избавление от страхов

    11.12.2016: [Франшиза 2017] Новогодний бизнес под ключ

    08.12.2016: Книга - Маркетинг Дракулы

    08.12.2016: Сегментация как способ найти клиента - [profileschool]

    07.12.2016: Менеджмент кинопроизводства (Киношкола 2morrow)

    07.12.2016: Создание сценария на основе рассказа (Киношкола 2morrow)

    03.12.2016: Книга - Ботаническая иллюстрация. Венди Холендер

    02.12.2016: Кен Уилбер. Интегральный буддизм

    02.12.2016: Е. Шморгун. Утренние медитации

    02.12.2016: Е. Шморгун. Первый базовый модуль. Осознанность

    02.12.2016: Е. Шморгун. Второй базовый модуль. Мои отношения с собой

    28.11.2016: Самураи. Первая полная энциклопедия (2016)

    28.11.2016: Большая книга общения с ребенком (2016)

    28.11.2016: Гражданский кодекс для чайников (2016)

    28.11.2016: Уголовный кодекс для чайников (2016)

    28.11.2016: Иудаизм и масонство. Платонов (2016)

  2. Нужен организатор

    21.02.2017: Оптимизация налогов и страховых взносов. Защита активов в 2016 г.

    20.02.2017: [Новый поток] Женская система тайм-менеджмента «Успеваю все»

    20.02.2017: [Шитье] Уроки Татьяны Роговой

    20.02.2017: Хочешь быть красивой? Танцуй!

    20.02.2017: Шьем купальники для гимнастики

    20.02.2017: Шьем себе любимым

    01.02.2017: Cosmic Power и канал исцеления в расстановках.

    31.01.2017: АВТОМАТИЧЕСКАЯ ПРОГРАММА для ставок на ФУТБОЛ, ХОККЕЙ И БАСКЕТБОЛ!!!

    29.01.2017: Остроумие, подшучивание, обаятельность. Как вести увлекательные беседы

    28.01.2017: Тарас Левчик - Арбитраж трафика и товарка (коучинг)

    26.01.2017: Сергей Домогацкий - Путь

    24.01.2017: Вебинары К. Довлатова по "сказкам" с реинтеграциями

    21.12.2016: Все для дома и сада. Летний интенсив(2016)

    11.12.2016: [Франшиза 2017] Новогодний бизнес под ключ

    08.12.2016: Сегментация как способ найти клиента - [profileschool]

    15.10.2016: Эзотерический марафон "Новая Я"

    15.08.2016: В каждом ребенке солнце

    15.08.2016: Испания. Гастрономия

    15.08.2016: Книги по китайской медицине. Часть 2.

    15.08.2016: Логотип и фирменный стиль. Руководство дизайнера

    15.08.2016: Налоги за 14 дней. Экспресс-курс. Новое, 14-е изд.

    15.08.2016: Голубая точка. Космическое будущее человечества

    15.08.2016: Бесплодие — диагноз или приговор

    15.08.2016: Руководство по самоисцелению

    15.08.2016: Хорошие девочки отправляются на небеса, а плохие – куда захотят

    15.08.2016: Гипноз и другие фишки на сайте или секреты продающих сайтов

    03.08.2016: Любовная Совместимость. Методика Разведчиков

    19.01.2016: Ментальный курс от Александра Росса

    25.08.2014: IonCube v8.3 Decoder + PHP Script Auto-Fixer

  3. Сбор взносов

    11.02.2017: Книга - Высокие технологии для сада и огорода

    03.02.2017: Элитный курс «фитнес-нутрициолог»

    23.12.2016: Немецкий язык с нуля - Курс A1.1

    21.12.2016: На двух приличных женщин один приличный мужчина

    20.12.2016: Великолепная семёрка для тюнинга мозга. Полонейчик

    03.12.2016: Книга - Ботаническая иллюстрация. Венди Холендер

    28.11.2016: Самураи. Первая полная энциклопедия (2016)

    28.11.2016: Большая книга общения с ребенком (2016)

    28.11.2016: Гражданский кодекс для чайников (2016)

    28.11.2016: Уголовный кодекс для чайников (2016)

    28.11.2016: Иудаизм и масонство. Платонов (2016)

    28.11.2016: Православие против масонства. Платонов (2016)

    28.11.2016: Русское сопротивление. Война с антихристом. Платонов

    28.11.2016: Война с внутренним врагом. Платонов

    28.11.2016: Государственная измена. Платонов

    28.11.2016: Злые мифы о России. Что о нас говорят на Западе? (2016)

    27.11.2016: Другая Америка. Записки волонтера

    27.11.2016: Грязные войны буржуинов

    27.11.2016: Автоматизация произношения и дифференциация звуков [ц], [ч], [щ] (2016)

    27.11.2016: Автоматизация произношения и дифференциация звуков раннего онтогенеза (2016)

    27.11.2016: Автоматизация произношения и дифференциация звуков [с]-[ш]-[з]-[ж] (2016)

    27.11.2016: Автоматизация произношения и дифференциация звуков [с]-[з]-[с']-[з'] (2016)

    27.11.2016: Автоматизация произношения и дифференциация звуков [р] и [р'] (2016)

    27.11.2016: Автоматизация произношения и дифференциация звуков [л], [л'], [j] (2016)

    27.11.2016: Моделирование женской одежды для начинающих (2016)

    27.11.2016: Учить иностранные слова легко

    26.11.2016: Читаем и поем по-английски! Песенки и стихи для малышей

    26.11.2016: Работы по огороду и теплицам в августе, осенью и подготовка участка к зиме

    25.11.2016: Карта рая. Путешествие по загробному миру (2016)

    25.11.2016: Набор «Клуб весёлых дошколят (серия)»

    25.11.2016: Самые интересные путешествия по России

    25.11.2016: Мата Хари. Шпионка

    25.11.2016: Все факторы огородного успеха

    25.11.2016: Особенно Ломбардия. Образы Италии XXI

    24.11.2016: Византийцы. Наследники Рима

    24.11.2016: Краткая история Англии

    24.11.2016: Антироссийские исторические мифы (2016)

    24.11.2016: Монтессори у вас дома. Узнаём окружающий мир (2016)

    24.11.2016: Монтессори у вас дома. Развитие речи (2016)

    24.11.2016: Эволюция жизни и формы

    24.11.2016: Великие тайны Вселенной. От древних цивилизаций до наших дней

    24.11.2016: Космос. Эволюция Вселенной, жизни и цивилизации

    24.11.2016: Физика невозможного

    24.11.2016: Красота физики. Постигая устройство природы

    24.11.2016: История Земли. От звездной пыли – к живой планете

    24.11.2016: Будущее разума

    24.11.2016: Как открытия Эйнштейна изменили наши представления о пространстве и времени

    24.11.2016: Мир, полный демонов. Наука – как свеча во тьме

    24.11.2016: Голубая точка. Космическое будущее человечества (2016)

    23.11.2016: Развиваем мозг малыша, просто беседуя с ним

    23.11.2016: Электропроводка в квартире. Своими руками (2016)

    23.11.2016: Разговоры с детьми на сложные темы (2016)

    23.11.2016: Развитие речи. Учимся говорить правильно звуки «С», «3», «Ц»

    23.11.2016: Говорим правильно звуки «Ш», «Ж», «К», «Г», «Х» (2016)

    23.11.2016: Мои первые рассказы. Альбом для развития речи (2016)

    23.11.2016: Большой альбом по развитию малыша от 2 до 4 лет (2016)

    23.11.2016: Большой альбом по развитию малыша от 4 до 7 лет (2016)

    23.11.2016: Растяжка, энергия, сознание для бойца (Варченко)

    22.11.2016: Что нужно знать, чтобы ваш сын вырос настоящим мужчиной (2016)

    22.11.2016: Развивающие занятия «ленивой мамы» (2016)

Раздача Разработка тестов на C# с использованием Selenium

Тема в разделе "[WEB] Программирование, администрирование", создана пользователем Бизон, 4 ноя 2015.

  1. TopicStarter Overlay
     
    Бизон
    offline

    Бизон Контент-менеджер Helper VIP

    Сообщения:
    1.097
    Симпатии:
    1.728
    Монеты:
    Репутация:
    296
    http://software-testing.ru/trainings/schedule?&task=3&cid=228

    Разработка тестов на C# с использованием Selenium

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

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

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

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

    И вот на этом этапе мы как раз обсудим базовые конструкции языка программирования С# -- пространства имён, классы и объекты, поля и методы, переменные и типы данных.

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

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

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

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

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

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

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

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

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

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

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

    6. Автоматизация Windows UI
    С одной стороны, это занятие-повторение. Мы заново построим новый тестовый набор с двухуровневой архитектурой для нового тестируемого приложения, для закрепления материала. С другой стороны, мы выберем приложение другого типа -- не веб-, а десктопное windows-приложение. Поэтому для работы с ним потребуется другой инструментарий. Но при этом мы увидим, что принципы построения тестового набора остаются теми же самыми.

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

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

    8. Работа с почтой

    9. Сетевое программирование (протоколы прикладного уровня)
    Эти два занятия будут посвящены рассмотрению особенностей тестирования распределённых приложений и вопросам автоматизации интеграционного тестирования.

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

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

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

    10. Тестовые фреймворки
    И последнее занятие будет посвящено рассмотрению альтернативных тестовых фреймворков, в том числе инструмента для разработки тестов “на естественном языке” SpecFlow.

    Скрытое содержимое:
    **Для просмотра скрытого текста/ссылки у вас должно быть не менее 15 сообщений.**
    Или
    Приобрести премиум-доступ ко всем ссылкам



    Ochkarik и Osvax нравится это.

Поделиться этой страницей

DDoS Protection Powered by  DDos-GuarD