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

Ключ

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

Отображение дочерних элементов
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

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

Скролл до элемента (добавить действие) (вопрос)

Получить элементы (коллекция по заданным атрибутам) (их количество можно посчитать)

Ввести текст

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

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

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

  1. N/A

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

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

...

  1. Система эмитирует ввода текста в указанный элемент с помощью стандартной функции Selenium SendKeys

...

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

  1. Какие классы/интерфейсы рекомендуется проанализировать при реализации: IWebElement
  2. Система должна использовать "оптимальные" алгоритмы для ускорения ввода больших объемом текста (как пример - выполнение JavaScript)

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

Входные:

...

-

...

Альтернативный способ ввода для больших объёмов текста

...

Клик

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

  1. Возможность нажатия на элемент страницы

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

  1. N/A

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

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

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

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

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

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

Входные:

...

-

...

Получить текст

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

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

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

  1. Под вопросом необходимость функционала "Удалить вложения" - обсудить

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

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

    1. Система принимает на вход переменную браузера, элемент, тип возвращаемого текста и признак удаления пробелов
    2. Система выполняет анализ параметра "Тип возвращаемого текста"
      1. Видимый текст - возвращает текст всех узлов, в том числе вложенных, не скрытый стилями
      2. Текстовое содержимое  - возвращает весь текст всех узлов, в том числе вложенных, не зависимо от стилей
      3. Верхний уровень - возвращает текст только выбранного узла без вложенных не зависимо от стилей
    3. Система выполняет анализ параметра "Без пробелов"
      1. Установлен - Система возвращает текст в переменную "Результат" без лишних пробелов и пробельных символов
      2. Не установлен - Система возвращает текст как есть

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

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

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

Входные:

...

-

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

Способ формирования результирующей строки

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

...

Без пробелов(вопрос)

...

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

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

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

...

Выходные:

...

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

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

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

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

  1. N/A

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

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

    1. Система принимает на вход переменную браузера, элемент и признак удаления пробелов
    2. Система выполняет анализ параметра "Без пробелов"
      1. Установлен - Система возвращает текст в переменную "Результат" без лишних пробелов и пробельных символов
      2. Не установлен - Система возвращает текст как есть

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

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

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

Входные:

...

-

...

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

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

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

...

Выходные:

...

Получить значение списка

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

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

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

  1. N/A

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

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

    1. Система принимает на вход переменную браузера и элемент
    2. Система выполняет анализ параметра "Без пробелов"
      1. Установлен - Для каждой выбранной опции удаляются пробелы в тексте и ключе опции
      2. Не установлен - Система возвращает текст и ключ опций как есть
    3.  Система возвращает список выбранных опций (текст и ключ для каждой опции)

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

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

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

Входные:

...

-

...

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

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

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

...

Выходные:

...

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

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

  1. Возможность получения значение чек-бокса (только для типа элемента input/checkbox)

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

  1. N/A

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

  1. Сценарий работы
    1. Система принимает на вход переменную браузера и элемент
    2. Система выполняет анализ атрибута "checked" элемента:
      1. Существует - Система возвращает True в переменную "Результат"
      2. Не существует - Система возвращает False

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

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

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

Входные:

...

-

Выходные:

...

Получить значение радио-кнопки

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

  1. Возможность получения значение чек-бокса (только для типа элемента input/checkbox)

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

  1. N/A

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

  1. Сценарий работы
    1. Система принимает на вход переменную браузера и элемент
    2. Система выполняет анализ атрибута "checked" элемента:
      1. Существует - Система возвращает True в переменную "Результат"
      2. Не существует - Система возвращает False

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

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

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

Входные:

...

-

Выходные:

...

Получить данные из таблицы

НЕ РЕАЛИЗОВАНО !!! из-за отсутствия типа RobinTable и не понимания принципов работы с ним

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

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

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

  1. N/A

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

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

    1. Система принимает на вход переменную браузера и элемент плюс дополнительные параметры
    2. Система выполняет попытку сохранения данных из страницы браузера в таблицу данных
    3. Если установлен чек-бокс "С заголовком" - отдельное выделятся заголовки таблицы
    4. Если установлен чек-бокс "Удалять пустые" - из полученной таблицы сразу удаляются пустые строки/столбцы

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

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

Ограничения:

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

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

Входные:

...

-

...

Выходные:

...

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

  1. Возможность очищения содержимого текущего элемента, применимо только к INPUT и TEXTAREA, в остальных случаях эффекта не имеет

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

  1. N/A

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

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

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

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

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

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

Входные:

...

-

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

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

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

  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

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

Входные:

...

-

...