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

Публикации Fobos

15 публикаций создано Fobos (учитываются публикации только с 18 мая 2023)


#158215 Поиск внутри элемента в IDE

Отправлено автор: Fobos 08 февраля 2017 - 08:37 в Selenium - Functional Testing

А что вы подразумеваете под словом "link"? Текст ссылки или адрес href?

 

Разместить два разных идентификатора в одной строке Selenium IDE насколько я знаю нельзя, да это и не нужно, всегда можно объединить в один: css или xpath.

 

Ммм как я понимаю текст ссылки. Если 2 разных нельзя - это грустно((




#158155 Поиск внутри элемента в IDE

Отправлено автор: Fobos 06 февраля 2017 - 09:19 в Selenium - Functional Testing

Подскажите пожалуйста, могу ли я произвести поиск внутри элемента (об элементе известен его css) другого элемента (о котором известен link)? И если могу, то как разместить в одной строке 2 идентификатора?




#156290 Поиск внутри элемента. Поиск старшего элемента

Отправлено автор: Fobos 22 ноября 2016 - 12:39 в Selenium - Functional Testing

Столкнулся со следующей проблемой.

 

Есть таблица, где информация представлена в виде строк, содержащих ячейки с информацией и кнопки.

 

Мне нужно найти строку по известному тексту, нажать на кнопку в этой строке.

Проблема в том, что простой поиск по тексту находит мне ячейку. Значит мне нужно каким-то образом от ячейки перейти к строке (т.е на уровень или несколько выше), после чего внутри данного элемента (строки) произвести поиск кнопки. Как можно это сделать на Selenium IDE? В каком направлении копать?




#156200 AssetText в storeEval

Отправлено автор: Fobos 17 ноября 2016 - 13:26 в Selenium - Functional Testing

 

Я имел ввиду команду для Selenium IDE

Типа

storeEval
if (selenium.isElementPresent(`xpath=(/html/body/div[1]/div/div[3]/div/section/div/div[3]/div[1]/table/tbody/tr[1]/td[12]/a[7])`) == true) {nextMove = `delete`} else {nextMove = `arhiv`}
nextMove

Похоже у вас какой-то плагин дополнительный установлен? В стандартном Selenium IDE таких команд как "selenium.isElementPresent" и "if", насколько мне известно, нет.

 

 

Да, это плагин, не помню названия(( Я думал он у всех есть




#156199 AssetTextPercent

Отправлено автор: Fobos 17 ноября 2016 - 13:25 в Selenium - Functional Testing

Да, спасибо, это работает




#156194 AssetTextPercent

Отправлено автор: Fobos 17 ноября 2016 - 12:11 в Selenium - Functional Testing

Уверен что вопрос уже поднимался, но гугл мне ничем не помог.

 

Суть: команда assetTextPercent не работает.

 

This command is deprecated. Use the assertText command with an element locator instead.
 
Вот такою ошибку выдает IDE 2.9.1 на эту тему.  Что делать? Как теперь проверять наличие текста без указания локатора?



#156193 AssetText в storeEval

Отправлено автор: Fobos 17 ноября 2016 - 11:49 в Selenium - Functional Testing

 

А как это должно выглядеть в виде команды для IDE?

А что вы подразумеваете под "IDE"?

 

 

Я имел ввиду команду для Selenium IDE

 

Типа

storeEval
if (selenium.isElementPresent(`xpath=(/html/body/div[1]/div/div[3]/div/section/div/div[3]/div[1]/table/tbody/tr[1]/td[12]/a[7])`) == true) {nextMove = `delete`} else {nextMove = `arhiv`}
nextMove



#156101 AssetText в storeEval

Отправлено автор: Fobos 14 ноября 2016 - 15:24 в Selenium - Functional Testing

В том и дело, что не могу. Проверять наличие элемента могу, а вот проверять наличие текста в элементе - нет. Нуб-с(




#156099 AssetText в storeEval

Отправлено автор: Fobos 14 ноября 2016 - 15:18 в Selenium - Functional Testing

Что-то я совсем запутался. Команда verifyText ведь просто проверяет наличие текста, а мне нужна вариативность.

 

Типа if (selenium.isVerifyText..., но это не работает.




#156097 AssetText в storeEval

Отправлено автор: Fobos 14 ноября 2016 - 15:07 в Selenium - Functional Testing

String elTxt = driver.findElement(By.xpath('//table[@id='DataTables_Table_0']/tbody/tr/td[2]')).getText();

if (elTxt.equals("01.01.2017")) ...

пример на JAVA

 

 

А как это должно выглядеть в виде команды для IDE?




#156095 AssetText в storeEval

Отправлено автор: Fobos 14 ноября 2016 - 14:59 в Selenium - Functional Testing

Я активно пользуюсь найденной на просторах сети командой if (selenium.isElementPresent(..., например

if (selenium.isElementPresent(`xpath=(/html/body/div[1]/div/div[3]/div/section/div/div[3]/div[1]/table/tbody/tr[1]/td[12]/a[7])`) == true) {nextMove = `delete`} else {nextMove = `arhiv`}

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

 

Однако теперь мне нужно проверять уже не наличие элемента, а текст в нем (в моем случае - даты 01.01.2017)

 

Как правильно записать эту команду? У меня получилось что-то типа

if (selenium.isText(//table[@id='DataTables_Table_0']/tbody/tr/td[2]`) == `01.01.2017`) {nextMove = `create1`} else {nextMove = `next1`}

Но это не работает. Ошибка [error] Threw an exception: expected expression, got end of script. А как должно быть?




#155987 Проверка части текста в Selenium IDE

Отправлено автор: Fobos 10 ноября 2016 - 14:00 в Selenium - Functional Testing

 

Что-то я не пойму, автор, вам для Selenium IDE нужно или как?

 

Да, все верно

Если так, то все очень легко.

verifyText | xpath=//table//td | Выполнено*

 

Афигенно. Т.е просто обозначаю нужный участок текста ** 

А я то думал там нужны невероятно сложные сложности. Спасибо!




#155983 Проверка части текста в Selenium IDE

Отправлено автор: Fobos 10 ноября 2016 - 13:46 в Selenium - Functional Testing

Ругулярными выражениями можешь попробовать

или

string dateOfCell = string.substring("Выполнено ".length)

 

К сожалению не очень понял. Что за регулярные выражения? И как должно выглядеть действие целиком? У меня нет команды string




#155981 Проверка части текста в Selenium IDE

Отправлено автор: Fobos 10 ноября 2016 - 13:44 в Selenium - Functional Testing

Что-то я не пойму, автор, вам для Selenium IDE нужно или как?

 

Да, все верно




#155966 Проверка части текста в Selenium IDE

Отправлено автор: Fobos 10 ноября 2016 - 10:40 в Selenium - Functional Testing

Выручайте.

 

Есть клетка таблице, в которой вписана информация образца "Выполнено 10.11.2016", где 10.11.2016 13:37 - момент времени, в который совершено действие.

Мне нужно научить мой Селениум проверять наличие в клетке текста "Выполнено".

 

На данный момент я вижу два решения:

 

- Сторить содержимое клетки, вырезая из него циферки. К сожалению через replace("1", "2", "3", "4", "5", "6", "7", "8", "9", "0", ":", ".") не вышло.

- Время и дату брать как переменную, типа ${data}, таким образом проверяя содержимое как "Выполнено ${data}

 

Но как это сделать? Прошу совета и помощи.