Перейти к содержимому

Фотография

Selenium IDE и вставка из буфера обмена в строку

selenium ide буфер обмена

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1 ХСБ

ХСБ

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Сергей Бо
  • Город:Москва

Отправлено 15 июля 2018 - 22:03

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

Использую именно Selenium IDE, браузер Хром или Файрфокс, ОС Windows 10

 

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

Что нужно написать в Command, Target и Value в Селениум, чтобы такая как мне казалось тривиальная процедура вставки из буфера наконец заработала? Буду очень благодарен!


  • 0

#2 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 16 июля 2018 - 07:43

Попробуйте

Сохранить в буфер:

{
    "Command": "store",
    "Target": "my data here",
    "Value": "!clipboard"
  }

Вставить из буфера:

  {
    "Command": "type",
    "Target": "ваш таргет - куда вставляем",
    "Value": "${!clipboard}"
  }


					
					
  • 0

#3 ХСБ

ХСБ

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Сергей Бо
  • Город:Москва

Отправлено 16 июля 2018 - 14:05

Почти... Не совсем то, что нужно.

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

А мне нужно по гиперссылке на странице скопировать значение её ссылки и вставить в другое поле на странице. Это реально сделать?

В общем нужно действие, которое вставит ту информацию, которая реально находится сейчас в буфере обмена Windows, может как-то эмуляцей Ctrl+V можно сделать? Я пробовал но тоже не помогает.

Ещё раз: на странице есть гиперссылка, я научился копировать и вставлять сам текст, которому назначена гиперссылка. Но вот мне нужно скопировать не текст гиперссылки, а саму гиперссылку. Реально ли такое сделать?


  • 0

#4 ХСБ

ХСБ

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Сергей Бо
  • Город:Москва

Отправлено 16 июля 2018 - 14:31

Т.е.  по сути надо скопировать и вставить адрес ссылки.


  • 0

#5 Noksa

Noksa

    Активный участник

  • Members
  • PipPip
  • 117 сообщений
  • ФИО:Александр

Отправлено 17 июля 2018 - 04:50

Зачем вообще использовать буфер обмена в тестах?

В чем смысл?

Вы хотите протестировать, что в ОС буфер обмена работает? 


  • 1

#6 Snap

Snap

    Специалист

  • Members
  • PipPipPipPipPip
  • 980 сообщений
  • ФИО:Роман
  • Город:Москва


Отправлено 17 июля 2018 - 13:35

Т.е.  по сути надо скопировать и вставить адрес ссылки.

Скорее не скопировать, а получить и сохранить.

Попробуйте так:

<tr>
	<td>storeAttribute</td>
	<td>link=Ссылка@href</td>
	<td>var</td>
</tr>
<tr>
	<td>open</td>
	<td>${var}</td>
	<td></td>
</tr>

То есть получаем href ссылки, сохраняем и переходим по адресу ссылки.


  • 0

#7 ХСБ

ХСБ

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Сергей Бо
  • Город:Москва

Отправлено 20 июля 2018 - 22:38

 

Т.е.  по сути надо скопировать и вставить адрес ссылки.

Скорее не скопировать, а получить и сохранить.

Попробуйте так:

<tr>
	<td>storeAttribute</td>
	<td>link=Ссылка@href</td>
	<td>var</td>
</tr>
<tr>
	<td>open</td>
	<td>${var}</td>
	<td></td>
</tr>

То есть получаем href ссылки, сохраняем и переходим по адресу ссылки.

 

 

Спасибо за пост, но немного не о том...

Вообще изначально хотел сохранить ссылку и/или емейл из элемента страницы и вставить в текстовое поле ввода на этой же странице.

Делал в Selenium IDE

 

Пытался сделать что-то типа такого

 

store

xpatch элемента откуда копируем данные

var

 

type

name текстового поля куда вставляем сохранённые данные

${var}

 

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

 

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


  • 0

#8 Snap

Snap

    Специалист

  • Members
  • PipPipPipPipPip
  • 980 сообщений
  • ФИО:Роман
  • Город:Москва


Отправлено 21 июля 2018 - 10:40

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

 

ХСБ что же у вас сохраняется вместо ссылки/email с помощью "storeAttribute@href"? Единственное, что там может не сохранится, так это домен, если он отсутствует в ссылке. То есть к примеру, ссылка может иметь неполной вид, на примере текущей страницы "/forum/index.php?/topic/36837-selenium-ide-i-vstavka-iz-bufera-obmena-v-stroku/". Но это легко исправить, к полученному пути  прибавить домен "software-testing.ru".


  • 1

#9 ХСБ

ХСБ

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Сергей Бо
  • Город:Москва

Отправлено 21 июля 2018 - 12:24

Помучился, получилось!!! Всем большое спасибо!!!

 

Чтобы сохранить и использовать ссылку:

store attribute
css=a[title="Тест-дизайн и ручное тестирование"]@href
var
 
type
id=main_search
${var}
 
Чтобы сохранить и использовать емейл
store attribute
//*[@id="mail"]@value
var
 
type
name=email
${var}

  • 0



Темы с аналогичным тегами selenium ide, буфер обмена

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных