Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Отображение дочерних элементов
depth2

Оглавление

Работа с окнами, вкладками, фреймами браузера:

Открыть браузер / Open browser

Данное действие предназначено для открытия выбранного браузера. В момент открытия браузера создается контекст.

Настройки

...

Браузер, который будет открыт.

Выпадающий список:

  • Chrome
  • Firefox
  • Internet Explorer
  • Edge (chromium)
  • Яндекс

По умолчанию Chrome.

...

Chrome

Да

Предзаполнено Chrome.

...

Открытие в невидимом режиме.

Чек-бокс.

По умолчанию false.

(Internet Explorer не поддерживает данную настройку (вопрос))

...

Пользовательский профиль, под которым необходимо открыть браузер.

Текущий пользовательский профиль задается значением "default".

Если поле не заполнено, то браузер откроется в гостевом режиме.

...

Будут подключены установленные расширения браузера, если они поддерживаются.

Чек-бокс.

Путь к папке?

...

Страница, c которой будет открыт браузер.

Выпадающий список:

  • Пустая страница
  • Домашняя страница
  • Ранее открытые вкладки
  • Заданная страница

По умолчанию about:blank

...

URL, по которому должен быть выполнен переход если в параметре "Тип страницы" было выбрано значение "Заданная страница".

Поле будет доступно к заполнению после выбора значения "Заданная страница" в параметре "Тип страницы".

...

Путь на диске к исполнимому файлу драйвера.

Удаляем - нужно решать на уровне конфигурации.

...

Текст в JSON формате, описывающий список свойств браузера и их значений, которые будут установлены при запуске.

Если параметр заполнен, его значения имеют преимущества перед значениями остальных полей.

Robin.String

или коллекция с несколькими выбранными значениями

...

Время ожидания открытия окна выбранного браузера.

Измеряется в миллисекундах.

Если окно не будет найдено, то действие завершится ошибкой.

По умолчанию значение равно "0".

...

Уникальный идентификатор открытого сеанса работы с браузером, к которому будут обращаться дальнейшие действия.

Экземпляр браузера, с которым будет работать Selenium.

...

Особые условия использования 

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

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

После завершения работы робота с браузером, браузер автоматически не закрывается. Требуется использование действия Закрыть браузер.

Настройки параметров запускаемого браузера зависят от конкретного браузера.

Реализована возможность работы с несколькими открытыми браузерами в рамках одного сценария

Пока не использует OpenQA.Selenium.Html5

Закрыть браузер / Close browser

Данное действие предназначено для закрытия браузера. В момент закрытия браузера закрывается контекст.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

Особые условия использования 

Отсутствуют.

Открыть вкладку / Open tab

Данное действие предназначено для открытия новой вкладки с указанным URL (с установкой фокуса на неё)

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

URL страницы, которая будет открыта как новая вкладка.

Возможна запись без "www", например "ya.ru".

Если адрес содержит некорректные символы, то действие завершится ошибкой.

...

Особые условия использования 

Отсутствуют.

Переключиться на вкладку / Switch to tab

Данное действие предназначена для переключения фокуса на выбранную вкладку.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Название вкладки.

Возможно частичное совпадение.

...

Особые условия использования 

Выбрать вкладку по индексу не работает, так как надежного способа идентификации нет.

Закрыть вкладку /  Close tab

Данное действие предназначена для закрытия выбранной вкладки.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Название вкладки.

Возможно частичное совпадение.

...

Особые условия использования 

Выбрать вкладку по индексу не работает, так как надежного способа идентификации нет.

Если вкладка единственная - Система закрывает браузер.

Переключиться на фрейм / Switch to frame

Данное действие предназначена для переключения фокуса на выбранный фрейм.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Элемент для взаимодействия.

Если поле не заполнено - переход в главное окно

Если заполнено - попытка поиска элемента (фрейма) и переключения на него.

...

Особые условия использования 

При работе с элементами страницы элементы фрейма недоступны. Для того, чтобы обратиться к элементам фрейма, на него необходимо переключиться.

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

Повторно перейти на текущую вкладку возможно также с помощью действия "Переключиться на вкладку".

Перейти по URL / Navigate to

Данное действие предназначено для перехода в рамках текущей вкладки по указанному URL.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

URL страницы, на которую будет совершен переход.

Возможна запись без "www", например "ya.ru".

Если адрес содержит некорректные символы, то действие завершится ошибкой.

...

Особые условия использования 

Отсутствуют.

Получить URL / Get active URL

Данное действие предназначено для получения URL текущей активной вкладки.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Особые условия использования 

Отсутствуют.

Обновить / Refresh

Данное действие предназначено для обновления текущей страницы. 

Система выполняет эмуляцию нажатия кнопки Image Removed   в браузере.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

Особые условия использования 

Отсутствуют.

Вперед / Forward

Данное действие предназначено для навигации вперёд на странице. 

Система выполняет эмуляцию нажатия кнопки Image Removed   в браузере.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

Особые условия использования 

Отсутствуют.

Назад / Back

Данное действие предназначено для навигации назад на странице. 

Система выполняет эмуляцию нажатия кнопки Image Removed в браузере.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

Особые условия использования 

Отсутствуют.

Простые действия с элементами:

Скролл до элемента / Scroll to element 

Данное действие предназначено для пролистывания страницы до указанного элемента.

(вопрос) Насколько совпадает с действием  Переместиться к элементу?

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

XPath элемента, на который будет направлено действие.

Если XPath не найден, то действие завершится ошибкой.

...

Особые условия использования 

Отсутствуют.

Получить элементы / Get elements 

Данное действие предназначено для получения XPath всех элементов, удовлетворяющих заданным условиям, в переменную.   

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Маска XPath элемента, на который будет направлено действие.

Если XPath не найден, то действие завершится ошибкой.

...

Текст элемента, по которому требуется выполнить поиск элементов.

Возможен поиск текста по частичному совпадению.

...

Наименование атрибута, по которому будет производиться поиск элементов.

...

Значение атрибута, по которому будет производиться поиск элементов.

Доступно только с определенным именем атрибута.

...

Коллекция web-элементов, соответствующих заданным параметрам.

...

Особые условия использования

Так как количество элементов можно подсчитать, специализированного действия "Подсчет элементов" нет.

Ввести текст / Set text

Данное действие предназначено для ввода текста в указанный элемент. Выполняется явное присвоение всей строки параметру элемента отвечающему за текст.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Элемент для взаимодействия.

...

Текст, который необходимо ввести в выбранный элемент.

Если не заполнено, будет внесено пустое значение.

...

Возможность быстрого ввода для больших объёмов текста.

...

Особые условия использования 

Отсутствуют.

Клик / Click

Данное действие предназначено для выполнения по указанному элементу клика левой кнопкой мыши.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Элемент для взаимодействия.

...

Особые условия использования 

Отсутствуют.

Получить текст / Get text

Данное действие предназначено для получения текста выбранного элемента.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Тип возвращаемого текста

...

Определяет, какой текст будет считан с элемента.

Весь видимый текст - возвращает текст всех узлов, в том числе вложенных, не скрытый стилями.

Все текстовое содержимое  - возвращает весь текст всех узлов, в том числе вложенных, не зависимо от стилей.

Только верхний уровень - возвращает текст только выбранного узла без вложенных не зависимо от стилей.

Выпадающий список:

  • Весь видимый текст - All visible text
  • Все текстовое содержимое  - All text content
  • Только верхний уровень - Top level only

По умолчанию Весь видимый текст.

...

Удалять лишние пробелы и пробельные символы.

Все пробельные символы (пробел, табуляция, разрыв строки etc.) заменяются на пробел.

Все повторяющиеся пробелы заменяются на единичный пробел.

Все пробелы в конце и начале строки удаляются.

...

Особые условия использования 

Отсутствуют.

Получить значение / Get value

Данное действие предназначено для получения значения выбранного элемента (атрибут Value).

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Удалять лишние пробелы и пробельные символы.

Все пробельные символы (пробел, табуляция, разрыв строки etc.) заменяются на пробел.

Все повторяющиеся пробелы заменяются на единичный пробел.

Все пробелы в конце и начале строки удаляются.

...

Особые условия использования 

Отсутствуют.

Получить значение списка / Get list value

Данное действие предназначено для получения выбранной в списке (тип элемента Select) опции. Одной, если атрибут multiple не установлен, и нескольких, если установлен.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Удалять лишние пробелы и пробельные символы.

Все пробельные символы (пробел, табуляция, разрыв строки etc.) заменяются на пробел.

Все повторяющиеся пробелы заменяются на единичный пробел.

Все пробелы в конце и начале строки удаляются.

...

Массив выбранных в списке опций.

Текст и ключ для каждой опции.

...

Особые условия использования 

Отсутствуют.

Получить значение чек-бокса / Get checkbox value

Данное действие предназначено для получения значение чек-бокса (только для типа элемента input/checkbox). Система выполняет анализ атрибута "checked" элемента.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Значение из чек-бокса.

...

Особые условия использования 

Отсутствуют.

Получить значение радио-кнопки / Get radio button value (под удаление, дублирует предыдущее)

Данное действие предназначено для получения значение радио-кнопки (только для типа элемента input/checkbox). Система выполняет анализ атрибута "checked" элемента.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Значение радио-кнопки.

...

Особые условия использования 

Отсутствуют.

Получить таблицу / Get table

Данное действие предназначено для получения таблицы в переменную.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Переменная, в которую будет сохранена полученная таблица.

...

Особые условия использования 

Действие применимо только для элементов с типом table.

Очистить элемент / Clear element

Данное действие предназначено для очистки содержимого выбранного элемента.

Настройки

...

Уникальный идентификатор открытого сеанса работы с браузером.

...

ACTION_CONTEXT

...

Да

...

Элемент для взаимодействия.

...

Особые условия использования 

Применимо только к INPUT и TEXTAREA, в остальных случаях эффекта не имеет.

Работа с мышью и клавиатурой

Расширенный ввод 

Бизнес требования (сейчас)

  1. Возможность эмуляции нажатия комбинации клавиш на отдельном элементе

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент, комбинацию клавиш модификаторов
    2. Система выполняет ввода текста в указанный элемент с учетом указанных модификаторов и указанной задержки между вводом символов

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement
  2. Чем отличается от :Ввести текст - к тексту применяются один или несколько модификаторов (Ctl, Alt, Shift), управляемая задержка между вводом символов текста

Входные/выходные параметры:

Входные:

...

-

...

Текст, который необходимо ввести

...

Список клавиш модификаторов

доступны всего три: Ctl, Alt, Shift

Robin.HotKeys (вопрос)

...

Расширенный клик

Бизнес требования (сейчас)

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

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент, тип клика и список клавиш модификаторов
    2. Система выполняет попытку правого, левого или двойного  клика на элементе в зависимости от типов с учетом указанных модификаторов

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Interactions

Входные/выходные параметры:

Входные:

...

-

...

Сложные действия с элементами

Отправить нажатие клавиш в браузер

Бизнес требования (сейчас)

  1. Возможность эмуляции нажатия комбинации клавиш на отдельном элементе

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, комбинацию клавиш, элемент и объект "цепочка действий"
    2. Система выполняет попытку передачи комбинации клавиш в браузер, если элемент не указан
    3. Система возвращает тот объект "цепочка действий", который был передан, если был

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement
  2. Чем отличается от :Отправить нажатие клавиш - выполняется отправка комбинации в браузер а не отдельный элемент, может включаться в цепочку действий

Входные/выходные параметры:

Входные:

...

Название

...

Описание

...

Тип

...

Обязательность

...

Значение по умолчанию

...

Возможные значения/Примеры

...

-

...

Выходные:

...

Переместиться к элементу

Бизнес требования (сейчас)

  1. Возможность перемещения курсора на указанный элемент

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент и объект "цепочка действий"
    2. Система выполняет анализ параметров "Смещение по оси X" и "Смещение по оси Y"
      1. Если они равны 0 - простое перемещение курсора на указанный элемент
      2. Если они не равны 0 - перемещение курсора на указанный элемент со смещением по осям
    3. Система возвращает тот объект "цепочка действий", который был передан, если был

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Interactions

Входные/выходные параметры:

Входные:

...

-

...

Выходные:

...

Зафиксировать левую клавишу мыши на элементе

Бизнес требования (сейчас)

  1. Возможность фиксации левой клавиши мыши

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент и объект "цепочка действий"
    2. Система анализирует параметр "Элемент"
      1. Если пусто - система эмитирует зажатие левой клавиши мыши на текущей позиции курсора
      2. Если не пусто - система эмитирует зажатие левой клавиши мыши на указанном элементе
    3. Система возвращает тот объект "цепочка действий", который был передан, если был

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Interactions

Входные/выходные параметры:

Входные:

...

-

...

Выходные:

...

Освободить левую клавишу мыши на элементе

Бизнес требования (сейчас)

  1. Возможность освобождения левой клавиши мыши

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент и объект "цепочка действий"
    2. Система анализирует группу параметров "Элемент"
      1. Если пустая - система эмитирует освобождение левой клавиши мыши на текущей позиции курсора
      2. Если не пустая - система эмитирует освобождение левой клавиши мыши на указанном элементе
    3. Система возвращает тот объект "цепочка действий", который был передан, если был

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Interactions

Входные/выходные параметры:

Входные:

...

-

...

Выходные:

...

Перетащить

Бизнес требования (сейчас)

Возможность перетащить элемент (операция Drag-and-drop

Бизнес требования (будущее)

N/A

Технические требования (сейчас):

Сценарий работы

    1. Система принимает на вход переменную браузера и группу параметров "Начальный элемент"
    2. Система анализирует группу параметров "Конечный элемент"
      1. Если не пустая - система эмитирует операцию Drag-and-drop между начальным и конечным элементом
      2. Если пустая - система эмитирует операцию Drag-and-drop между начальным элементом и смещением до точки (параметры "Смещение по оси X" и "Смещение по оси Y")
    3. Система возвращает тот объект "цепочка действий", который был передан, если был

Дополнительно:

  1. НЕ РАБОТАЕТ С HTML 5 (вопрос) - пересобирать драйвер...
  2. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Interactions

Входные/выходные параметры:

Входные:

...

-

...

Выходные:

...

Зафиксировать клавишу на элементе (очень вероятно внутри клик(вопрос))

Бизнес требования (сейчас)

  1. Возможность фиксации клавиши клавиатуры на элементе

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, клавишу (CTRL или ALT или SHIFT), элемент и объект "цепочка действий"
    2. Система анализирует группу параметров "Элемент"
      1. Если пустая - система эмитирует фиксацию клавиши в браузере
      2. Если не пустая - система эмитирует фиксацию клавиши на указанном элементе
    3. Система возвращает тот объект "цепочка действий", который был передан, если был

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Interactions

Входные/выходные параметры:

Входные:

...

-

...

Выходные:

...

Освободить клавишу на элементе

Бизнес требования (сейчас)

  1. Возможность освобождения клавиши клавиатуры на элементе

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы
    1. Система принимает на вход переменную браузера
    2. Система анализирует группу параметров "Элемент"
      1. Если пустая - система эмитирует освобождение клавиши в браузере
      2. Если не пустая - система эмитирует освобождение клавиши на указанном элементе
    3. Система возвращает тот объект "цепочка действий", который был передан, если был

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Interactions

Входные/выходные параметры:

Входные:

...

-

...

Выходные:

...

Начать цепочку действий

Бизнес требования (сейчас)

  1. Возможность формировать собственного сложного действия из набора простых

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы
    1. Система принимает на вход переменную браузера 
    2. Система создает объект "цепочка действий"
    3. Система возвращает объект "цепочка действий"

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Actions

Входные/выходные параметры:

Входные:

...

Выходные:

...

Выполнить цепочку действий

Бизнес требования (сейчас)

  1. Возможность формировать собственного сложного действия из набора простых

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы
    1. Система принимает на вход объект "цепочка действий" 
    2. Система вызывает метод, выполняющий все действия, включенные в цепочку

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Actions.build().perform();

Входные/выходные параметры:

Входные:

...

Поставить на паузу цепочку действий

Бизнес требования (сейчас)

  1. Возможность организовать задержку в браузере между действиями цепочки

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы
    1. Система принимает на вход переменную браузера, объект "цепочка действий" и продолжительность паузы
    2. Система создает объект "цепочка действий", если не была передана и выполняет задержку в браузере
    3. Система возвращает тот объект "цепочка действий", который был передан, если был

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: Actions

Входные/выходные параметры:

Входные:

...

Выходные:

...

Выполнить скрипт

Бизнес требования (сейчас)

  1. Возможность выполнить скрипт в браузере

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, скрипт и параметры скрипта
    2. Система выполняет указанный скрипт в браузере
    3. Система возвращает результат выполнения скрипта

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: JavascriptExecutor(executeScript)

Входные/выходные параметры:

Входные:

...

Выходные:

...

Свойства элемента 

Элемент отображается

Бизнес требования (сейчас)

  1. Возможность получения свойства элемента отвечающего за отображение

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера и элемент
    2. Система возвращает свойство элемента отвечающее за отображение

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement (Displayed)

Входные/выходные параметры:

Входные:

...

-

Выходные:

...

Элемент доступен

Бизнес требования (сейчас)

  1. Возможность получения свойства элемента отвечающего за доступность

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера и элемент
    2. Система возвращает свойство элемента отвечающее за доступность

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement (Enabled)

Входные/выходные параметры:

Входные:

...

-

Выходные:

...

Элемент выбран

Бизнес требования (сейчас)

  1. Возможность получения свойства элемента отвечающего за выбор

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера и элемент
    2. Система возвращает свойство элемента отвечающее за выбор

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement (Selected)

Входные/выходные параметры:

Входные:

...

-

Выходные:

...

Координаты элемента

Бизнес требования (сейчас)

  1. Возможность получения координат элемента 

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера и элемент
    2. Система возвращает координаты элемента

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement (Location)

Входные/выходные параметры:

Входные:

...

-

Выходные:

...

RobinLocationPoint

...

Размеры элемента

Бизнес требования (сейчас)

  1. Возможность получения размеров элемента

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера и элемент
    2. Система возвращает размеры элемента

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement (Size)

Входные/выходные параметры:

Входные:

...

-

Выходные:

...

Тип элемента

Бизнес требования (сейчас)

  1. Возможность получения название типа элемента

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера и элемент
    2. Система возвращает название типа элемента

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement (TagName)

Входные/выходные параметры:

Входные:

...

-

Выходные:

...

Получить атрибут элемента 

Бизнес требования (сейчас)

  1. Возможность получить значение указанного атрибута элемента

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент и название атрибута
    2. Система возвращает указанный атрибут элемента

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement (GetAttribute)

Входные/выходные параметры:

Входные:

...

-

...

Выходные:

...

Установка чекбоксов, комбобоксов (добавить действия) (вопрос)

Установить атрибут элемента 

Бизнес требования (сейчас)

  1. Возможность установить значение указанного атрибута элемента

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент, название атрибута и значение атрибута
    2. Система устанавливает новое значение в указанный атрибут элемента, если значение null, атрибут удаляется из элемента

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: JavascriptExecutor(executeScript)

Входные/выходные параметры:

Входные:

...

-

...

Получить стиль элемента 

Бизнес требования (сейчас)

  1. Возможность получить значение указанного свойства стиля элемента

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент и название свойства стиля
    2. Система возвращает указанное свойство стиля элемента

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement (GetCssValue)

Входные/выходные параметры:

Входные:

...

-

...

Выходные:

...

Установить стиль элемента

Бизнес требования (сейчас)

  1. Возможность установить значение указанного свойства стиля элемента

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход переменную браузера, элемент, название свойства стиля и значение стиля
    2. Система устанавливает новое значение в указанное свойство стиля элемента, если значение null, свойство устанавливается в значение по умолчанию

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: JavascriptExecutor(executeScript)

Входные/выходные параметры:

Входные:

...

-

...

Работа диалоговыми окнами

Получить текст окна диалога  

Бизнес требования (сейчас)

  1. Возможность получения текста активного окна диалога

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система выполняет запись текста из активного диалога в переменную Результат

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IAlert 

Входные/выходные параметры:

Входные:

...

Название

...

Описание

...

Тип

...

Обязательность

...

Значение по умолчанию

...

Возможные значения/Примеры

...

Выходные:

...

Название

...

Описание

...

Тип

...

Обязательность

...

Значение по умолчанию

...

Возможные значения/Примеры

...

Принять окно диалога

Бизнес требования (сейчас)

  1. Возможность принятия окна диалога

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система эмитирует согласие с окном диалога

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IConfirm 

Входные/выходные параметры:

Входные:

...

Название

...

Описание

...

Тип

...

Обязательность

...

Значение по умолчанию

...

Возможные значения/Примеры

...

Отклонить окно диалога

Бизнес требования (сейчас)

  1. Возможность отклонения окна диалога

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система эмитирует несогласие с окном диалога

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IConfirm

Входные/выходные параметры:

Входные:

...

Название

...

Описание

...

Тип

...

Обязательность

...

Значение по умолчанию

...

Возможные значения/Примеры

...

Ввести текст в окно диалога

Бизнес требования (сейчас)

  1. Возможность ввода текста в окно диалога

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система эмитирует ввод текста в окно диалога

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IPromt

Входные/выходные параметры:

Входные:

...

Название

...

Описание

...

Тип

...

Обязательность

...

Значение по умолчанию

...

Возможные значения/Примеры

...

Ожидания

ToDo

  1. Обдумать логику работы Системы в случае провала ожидания
    1. Если робот является тестом - должна быть возможность игнорирования провала

(Изменить название на проверку или добавить отдельное действие )

Ожидание существования элемента 

Бизнес требования (сейчас)

  1. Ожидание существования элемента

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и Элемент
    2. Система выполняет ожидание появления элемента в DOM браузера
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, ElementExists

Входные/выходные параметры:

Входные:

...

-

...

Ожидание видимости элемента

Бизнес требования (сейчас)

  1. Ожидание видимости элемента на странице

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и Элемент
    2. Система выполняет ожидание отображения элемента на странице плюс проверку того, что его размеры отличны от 0
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, ElementIsVisible

Входные/выходные параметры:

Входные:

...

-

...

Ожидание состояния выбора элемента

Бизнес требования (сейчас)

  1. Ожидание состояния выбора элемента элемента на странице в зависимости от переданного параметра

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и Элемент
    2. Система выполняет анализ параметра "Состояние"
      1. Если True - ожидается что элемент выбран
      2. Если False - ожидается что элемент не выбран
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Применяется только к элементу Option
  2. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, ElementSelectionStateToBe

Входные/выходные параметры:

Входные:

...

-

...

Ожидание возможности нажать на элемент

Бизнес требования (сейчас)

  1. Ожидание возможности нажать на элемент

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и Элемент
    2. Система выполняет ожидание возможности нажать на элемент
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, ElementToBeClickable

Входные/выходные параметры:

Входные:

...

-

...

Ожидание невидимости элемента

Бизнес требования (сейчас)

  1. Ожидание факта того, что элемент стал невидимым либо вообще исчез из DOM

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и Элемент
    2. Система выполняет ожидание факта того, что элемент стал невидимым либо вообще исчез из DOM
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, InvisibilityOfElementLocated

Входные/выходные параметры:

Входные:

...

-

...

Ожидание невидимости элемента c текстом

Бизнес требования (сейчас)

  1. Ожидание факта того, что элемент с определённым текстом стал невидимым либо отсутствует в DOM

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и Элемент
    2. Система выполняет ожидание факта того, что элемент с определённым текстом (параметр "Текст") стал невидимым либо вообще исчез из DOM
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, InvisibilityOfElementWithText

Входные/выходные параметры:

Входные:

...

-

...

Вариант совпадения

...

Строгое / Не строгое /
Регулярное выражение

...

Ожидание существования группы элементов

Бизнес требования (сейчас)

  1. Ожидание факта того, что группа элементов существует в DOM

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр характеризующий группу элементов
    2. Система выполняет ожидание факта того, что все элементы из группы существуют в DOM
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, PresenceOfAllElementsLocatedBy

Входные/выходные параметры:

Входные:

...

-

...

Ожидание отсутствия элемента

Бизнес требования (сейчас)

  1. Ожидание факта того, что элемент отсутствует в DOM

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и группу элементов
    2. Система выполняет ожидание факта того, что элемент отсутствует в DOM
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, StalenessOf

Входные/выходные параметры:

Входные:

...

-

...

Ожидание текста элемента

Бизнес требования (сейчас)

  1. Ожидание текста в элементе.

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и группу элементов
    2. Система выполняет ожидание факта того, что в элементе указан определённый текст (параметр "Текст")
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, TextToBePresentInElement

Входные/выходные параметры:

Входные:

...

-

...

Вариант совпадения

...

Строгое / Не строгое /
Регулярное выражение

...

Ожидание заголовка страницы

Бизнес требования (сейчас)

  1. Ожидание факта того, что заголовок страницы содержит определённый текст

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр и Текст
    2. Система выполняет анализ параметра "Вариант совпадения"
      1. Строгое - заголовок равен параметру  "Текст"
      2. Не строгое - заголовок содержит параметр "Текст"

      3. Регулярное выражение - Заголовок удовлетворяет регулярному выражению в параметре "Текст"
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, TitleContains

Входные/выходные параметры:

Входные:

...

Вариант совпадения

...

Строгое / Не строгое /
Регулярное выражение

...

Ожидание видимости группы элементов

Бизнес требования (сейчас)

  1. Ожидание факта того, что группа элементов видима на странице

Бизнес требования (будущее)

  1. N/A

Технические требования (сейчас):

  1. Сценарий работы

    1. Система принимает на вход Экземпляр характеризующий группу элементов
    2. Система выполняет ожидание факта того, что все элементы из группы видимы на странице
    3. Система выполняет анализ параметра "Время ожидания"
      1. Если 0 - ожидается выполнение условия в течение времени, которое было установлено для всего браузера
      2. Если не 0 - ожидается выполнение условия в течение времени, указанного в параметре

Дополнительно:

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: ExpectedConditions, VisibilityOfAllElementsLocatedBy

Входные/выходные параметры:

Входные:

...

-

...