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

Публикации anna99

32 публикаций создано anna99 (учитываются публикации только с 19 апреля 2023)



#172020 Как сделать, чтобы переменная увеличилась на число n (Selenium IDE)

Отправлено автор: anna99 30 апреля 2019 - 07:45 в Selenium - Functional Testing

Из справки по локаторам:

Element <E1> immediately following sibling <E2>: E2 + E1

 

Т.е. скорее всего: #cal td.today+td (если именно на том же уровне и не задизейбленный)

Спасибо, Таня! Попробую.




#171965 Как сделать, чтобы переменная увеличилась на число n (Selenium IDE)

Отправлено автор: anna99 26 апреля 2019 - 08:54 в Selenium - Functional Testing

Может быть смотреть не с точки зрения "выбранная ранее дата + 1 день", а с точки зрения "элемент с датой следующий сразу за элементом с текущей датой"?

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

Вот локатор текущей даты: css=#cal td.today

Следующий элемент тоже td

Через пробел тоже не проходит, имею ввиду вот так: css=#cal td.today td

Пример кода ниже:

1) это сегодня <td id="day26" class="today" headers="row4 Friday" role="gridcell" aria-selected="false" aria-label="26/4/2019" tabindex="0">26</td>

2) Это завтра  <td id="day27" headers="row4 Saturday" role="gridcell" aria-label="27/4/2019" aria-selected="false">27</td>




#171961 Как сделать, чтобы переменная увеличилась на число n (Selenium IDE)

Отправлено автор: anna99 26 апреля 2019 - 08:17 в Selenium - Functional Testing

Может быть смотреть не с точки зрения "выбранная ранее дата + 1 день", а с точки зрения "элемент с датой следующий сразу за элементом с текущей датой"?

Таня, спасибо! Вот я знала, об этом, но почему-то именно данный самый простой способ забыла. Вы как всегда, гуру. Еще раз спасибо!




#171960 Как сделать, чтобы переменная увеличилась на число n (Selenium IDE)

Отправлено автор: anna99 26 апреля 2019 - 08:15 в Selenium - Functional Testing

некоторые забивают гвозди микроскопом, а вы делаете наоборот

 

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

 

Вам просто надо использовать микроскоп

 

Вы пытаетесь решать сложные задачи с помощью Selenium IDE, хотя вам надо научиться программировать и использовать нормальный тул типа WebDriver, Cypress и т.п.

 

а вообще по Вашему вопросу:

Вам надо получить текущую дату и преобразовать в Date объект, затем получить следующий день из этого объекта, затем уже в интерфейсе выбрать нужный месяц и нужное число

Спасибо большое))) Я подумаю над вашим преложением!




#171959 Как сделать, чтобы переменная увеличилась на число n (Selenium IDE)

Отправлено автор: anna99 26 апреля 2019 - 08:15 в Selenium - Functional Testing

Не очень понятно, на что вы в данном случае рассчитываете? Неужели вы думаете, что выражение вида ${day1} + 2 вернет вам 27 апреля 2019 года. Это же разные типы данных. Откуда Selenium IDE вообще знать, что вы имеете ввиду дни, а не часы или секунды?

я думала об этом...но решила попробовать все варианты, которые пришли в голову))) Спасибо!




#171948 Как сделать, чтобы переменная увеличилась на число n (Selenium IDE)

Отправлено автор: anna99 25 апреля 2019 - 09:24 в Selenium - Functional Testing

Доброе утро!

 

Ребята, помогите, пожалуйста. Как сделать, чтобы переменная, которую я сохранила, в последствие увеличивалась на любое число?

 

Есть календарь, в котором при помощи команды (Спасибо Татьяне)))) вытаскиваю в поле текущую дату.

Затем выполняю команды

store value | id=date | day1

echo | ${day1}
возвращает : 25 апреля 2019

 

 

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

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

 

Начала пробовать с переменными.

Так как у меня уже есть переменная day1, я пробовала так:

click (именно этой командой выбирается значение из календаря) | локатор: ${day1} + 2 (или любое другое число) | значение: пусто

Не отрабатывает!

Затем попробовала и число, которое добавляется к переменной тоже объявить переменной

store | 2 | i

И далее, пробовала так:
click  | локатор: ${day1} + ${2}  | значение: пусто

Не отрабатывает!

Потом решила сохранить это выражение, как еще одну переменную и уже использовать ее:

store | ${day1} + ${2} | day2

click | ${day2}

Не отрабатывает!

 

Что я делаю не так? Подскажите, пожалуйста.

 




#171873 Регулярные выражения в Selenium IDE

Отправлено автор: anna99 18 апреля 2019 - 14:16 в Selenium - Functional Testing

Да, неправильно. "*" - повторение последнего символа/группы 0 и более раз. ".*" - повторение любого символа/группы 0 и более раз. Но в Вашем случае правильнее использовать "06:\d\d" или "06:[0-5]\d".

https://www.w3school...xp_zeromore.asp

Спасибо большое!

Но не проходит.

символ d - обозначает? у меня же там минуты...

пишу данное выражение в поле value: regexp:"06:d\d" валится(  попробовала regexp:"06:m\m" -  валится(

попробовала regexp:"06:[0-5]\d" тоже валится

такой вариант тоже пробовала regexp:"06:*" - валится

 

команду использую verify text

 

Может команда не та?




#171869 Регулярные выражения в Selenium IDE

Отправлено автор: anna99 18 апреля 2019 - 12:47 в Selenium - Functional Testing

Добрый день!

 

Вот и до регулярных выражений дошла очередь))))

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

 

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

Сортровка организована от самого раннего рейса к позднему, соответсвенно, привязываюсь ко времени (беру несколько рейсов за день и проверяю, что время идет по нарастающей)

 

Изначально проверяла по точному совпадению времени рейса - см в файл 1

 

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

Но шаги не проходят( Пробовала рег выражение писать и в поле Цель и в поле Значение...ничего. Наверное, само регулярное выражение некорректно??? - см. файл 2

Спасибо большое!

 

Прикрепленные изображения

  • 1.JPG
  • 2.JPG



#171834 Выбор даты из календаря средствами Selenium IDE

Отправлено автор: anna99 16 апреля 2019 - 14:49 в Selenium - Functional Testing

А Вас слово "not" не смущает? :) 
 
[id*='day']:not([class='disabled']) = элемент, в айдишнике которого присутствует "day", и у которого НЕТ класса "disabled".

 

Соответственно, варианты, которые Вы пробовали:

css=#day:not([class*="disabled"]):not([class*="today"]) = элемент, айдишник которого = "day" (у Вас вроде бы не было таких элементов), и у которого НЕТ класса "disabled" и НЕТ класса "today".

css=[id*="day"]:not([class*="disabled"]):not([class*="today"]) = элемент, в айдишнике которого присутствует "day", и у которого НЕТ класса "disabled" и НЕТ класса "today".

 

#cal td.today = где-то ниже по DOM'у относительно элемента с id = "cal", найти элемент td, у которого ЕСТЬ класс "today".

 

Ничего удивительного, что с этими локаторами по-разному отрабатывает всё :).

 

Теоретически, [id*="day"]:not([class*="disabled"]):not([class*="today"])  должно было отработать и кликнуть по "вчера" (если по скрину с кодом смотреть). Возможно, пытается кликнуть до того, как календарь "откроется". 

verify element present смотрит лишь на наличие элемента в DOM'e. Видно его или нет, можно ли по нему кликнуть и т.д. - не проверяется.

Попробуйте дожидаться не наличия элемента (verify element present), а его кликабельности (element clickable - не знаю, как оно в IDE пишется).

 

п.с.: [id*="day"].today:not([class*="disabled"]) = элемент, айдишник которого содержит "day", и у которого ЕСТЬ класс "today" и НЕТ класса "disabled".

Таня, спасибо! Буду пробовать. А по вышеописанному, да, я not для today намеренно написала. Мне это и нужно было, чтобы выбралась активная дата, но не сегодня,например вчера или завтра. Поэтому я и написала такой локатор css= [id*="day"]:not([class*="disabled"]):not([class*="today"]) 

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

А так, конечно я поняла, как именно отрабатывает данный локатор и для чего там not))))) Спасибо огромное!




#171809 Выбор даты из календаря средствами Selenium IDE

Отправлено автор: anna99 15 апреля 2019 - 13:46 в Selenium - Functional Testing

css: [id*='day']:not([class='disabled'])

 

п.с.: *= - означает "содержит".

Добрый день! Татьяна, спасибо! Для команд verify element present данная проверка проходит отлично.
А вот команда click (а именно она используется для выбора даты из календаря) не отрабатывает. Календарь открывается и все на этом, дата, не задизейбленная (даже текущая, она тоже активна) не выбирается. Я попробовала ограничить еще и классом today, вот так 

css=#day:not([class*="disabled"]):not([class*="today"])

или

css=[id*="day"]:not([class*="disabled"]):not([class*="today"])

или

css=[id*="day"]:not([class*="disabled";"today"])

 

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

 

А вот если просто указываю условие для выбора текущей даты, все отрабатывает, текущая дата выбирается из календаря.

Команда опять же click и локатор css=#cal td.today

 

Если можно, поправьте меня, что не так?




#171739 Выбор даты из календаря средствами Selenium IDE

Отправлено автор: anna99 11 апреля 2019 - 11:15 в Selenium - Functional Testing

Добрый день!

Опять я к вам за помощью.

Проанализировала даты в календаре. Есть активные для выбора даты, есть неактивные. Отличаются в коде только классом, у неактивных класс disabled.

Могу ли я средствами Selenium IDE выбрать любую дату, которой не присвоен класс disabled, соответственно она активна.

Пробовала регулярным выражением, не получается((( может не правильно шаблон прописываб(((

 

Все даты в календаре имеют id=dayи цифру дня, соответственно., т.е. id=day1, (2, 3, 4, и т.д.)

 

Может есть како-йто волшебный метод, который заставит селениум работать!))) Именно Selenium IDE!

 

Спасибо большое!

Прикрепленные изображения

  • 1.JPG



#171640 Команда "wait for element present" (Selenium IDE) - нужно ли у

Отправлено автор: anna99 09 апреля 2019 - 08:48 в Selenium - Functional Testing

Теоретически, "element present" ждёт появления элементов в DOM'е, а не у Вас на экране. Возможно, блок для результатов в DOM'е присутствует изначально, а после поиска - выводится.

На это намекает "display: none;" в searchResultContainerEmpty - возможно у mCSB_container до поиска тоже стояло "display: none;". Но т.к. сам элемент есть, "wait for element present" его успешно находит.

 

Если Вы хотите проверять, что элемент не просто есть, но и выведен на экран - есть два варианта:

1. Ждать не "wait for element present", а "wait for element clickable" (не помню уже, как это правильно в Selenium IDE пишется).

2. Если я права и он просто скрыт через style*='display: none;', можно попробовать искать через немного другой локатор. Т.е. ждать не "#searchResult > div.mCSB_container", а "#searchResult > div.mCSB_container:not([style*='display: none;'])" или "#searchResult:not([style*='display: none;']) > div.mCSB_container", в зависимости от того, на какой элемент вешается style*='display: none;' до поиска. Попробуйте посмотреть эту часть кода страницы до "поиска".

Татьяна, я проанализировала код.К сожалению, элементы "#searchResult > div.mCSB_container" изначально присутствуют на странице, еще до момента поиска. Это просто пустые блоки и они не регулируются атрибутом style*='display: none;'. Я думаю, что мне не стоит привязываться к ним ("#searchResult > div.mCSB_container"). А проверку результатов поиска организовать посредством привязки к вложенным элементам (список дивов с классом flightContainer), которые появляются у элемента div.mCSB_container после поиска.




#171636 Команда "wait for element present" (Selenium IDE) - нужно ли у

Отправлено автор: anna99 09 апреля 2019 - 07:06 в Selenium - Functional Testing

Теоретически, "element present" ждёт появления элементов в DOM'е, а не у Вас на экране. Возможно, блок для результатов в DOM'е присутствует изначально, а после поиска - выводится.

На это намекает "display: none;" в searchResultContainerEmpty - возможно у mCSB_container до поиска тоже стояло "display: none;". Но т.к. сам элемент есть, "wait for element present" его успешно находит.

 

Если Вы хотите проверять, что элемент не просто есть, но и выведен на экран - есть два варианта:

1. Ждать не "wait for element present", а "wait for element clickable" (не помню уже, как это правильно в Selenium IDE пишется).

2. Если я права и он просто скрыт через style*='display: none;', можно попробовать искать через немного другой локатор. Т.е. ждать не "#searchResult > div.mCSB_container", а "#searchResult > div.mCSB_container:not([style*='display: none;'])" или "#searchResult:not([style*='display: none;']) > div.mCSB_container", в зависимости от того, на какой элемент вешается style*='display: none;' до поиска. Попробуйте посмотреть эту часть кода страницы до "поиска".

Таня, спасибо большое! Буду пробовать сейчас. Я почему-то так и думала, что находит он ег сразу, т.к. элемент изначально присутствует, просто не виден.




#171629 Команда "wait for element present" (Selenium IDE) - нужно ли у

Отправлено автор: anna99 08 апреля 2019 - 17:44 в Selenium - Functional Testing

Всем добрый вечер!

 

Помогите, пожалуйста, разобраться с командой "wait for element present" в Selenium IDE.

Задаю в приложении параметры поиска, жму кнопку Искать...в течение какого-то времени, может сек 10 идет поиск.

Ну и, соот-но, появляются результаты поиска.

 

Скрипт следующий:

 

click                                                 id=searchButton

 

wait for element present                  css=#searchResult > div.mCSB_container                       30000

 

так вот, почему-то не ждет скрипт 30 сек, пока откроются результаты поиска. Идет дальше, ну а элементов, которые я проверяю уже по результатам , соот-но нет, вот и валится(((

Скорее всего, я что-то делаю не так, а вот что, не пойму((

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

 

На всякий случай прикладываю HTML.

Прикрепленные изображения

  • 1.JPG



#171628 Как проверить, что выбрано (подсвечено) конкретное значение в выпадающ

Отправлено автор: anna99 08 апреля 2019 - 17:16 в Selenium - Functional Testing

Что-то вроде [data-ident='city'][data-title='Москва'].current

Или: [data-ident='city'][data-title='Москва']>span.tower

 

(css)

Татьяна, спасибо за помощь!!! Локаторы отрабатывают корректно...Очень помогли!)))




#171627 Как проверить, что выбрано (подсвечено) конкретное значение в выпадающ

Отправлено автор: anna99 08 апреля 2019 - 17:14 в Selenium - Functional Testing

Тогда приводите полностью команду и ошибку

Вы знаете, я беру свои слова обратно. Локатор, который был предложен Татьяной,отрабатывает (с командой verify element present). Это, оказывается, у меня в приложении не всегда отрабатывает геолокация...сейчас вот все проверяю...один раз срабатывает кнопка, второй нет, соотве-но город автоматом не выбирается и данный шаг фейлится. Спасибо, что помогли разобраться!))))




#171605 Как проверить, что выбрано (подсвечено) конкретное значение в выпадающ

Отправлено автор: anna99 08 апреля 2019 - 07:53 в Selenium - Functional Testing

 

 

Что-то вроде [data-ident='city'][data-title='Москва'].current

Или: [data-ident='city'][data-title='Москва']>span.tower

 

(css)

Спасибо! Попробовала, но это тоже не работает(((

 

А какую команду использовали?

 

пробовала verify element present, verify selected value, verify value




#171575 Как проверить, что выбрано (подсвечено) конкретное значение в выпадающ

Отправлено автор: anna99 05 апреля 2019 - 11:04 в Selenium - Functional Testing

Что-то вроде [data-ident='city'][data-title='Москва'].current

Или: [data-ident='city'][data-title='Москва']>span.tower

 

(css)

Спасибо! Попробовала, но это тоже не работает(((




#171560 Как проверить, что выбрано (подсвечено) конкретное значение в выпадающ

Отправлено автор: anna99 04 апреля 2019 - 09:27 в Selenium - Functional Testing

Ребята, всем привет!
Вопрос по команде в Seleniun IDE.

 

Я проверяю работу кнопки "Определить ваше местоположение" (см. аттач 1).

Нажимаю ее и у меня выбирается мой город - Москва. Он подсвечен оранжевым.

Вот мне нужно проверить, что подсвечен имеенно мой город - Москва, т.е., что именно у Москвы оранжевый background-color.

Какую команду и какой локатор нужно прописать?

 

 

Подскажите, пожалуйста!!!

 

Прикладываю скрин экрана и html код.

 

Прикрепленные изображения

  • 1.JPG
  • 2.JPG



#171493 Команда store в Selenium IDE - в чем ее смысл?

Отправлено автор: anna99 01 апреля 2019 - 14:10 в Selenium - Functional Testing

Мне в свое время помогли туториалы. возможны и Вы что-то полезное для себя найдете: :victory: 
1) http://www.software-...lenium-ide.html 
2) http://forworktests....enium.html#id_5

Первую ссылку изучила! Это супер ресурс. Столько примеров, все сразу по полочкам))) Спасибо вам.




#171492 Команда store в Selenium IDE - в чем ее смысл?

Отправлено автор: anna99 01 апреля 2019 - 14:08 в Selenium - Functional Testing

 

не понял

 

есть два шага

 

1

Command: store

Target: variable

Value: Text

 

2

Command: echo

Target:

Value: ${variable}

 

Log:

  • 1. store on variable with value Text OK
  • echo:
  • completed successfully

Где содержимое 'echo'?

 

https://www.dropbox....-52-56.jpg?dl=0

а попробуйте ${variable} в поле Target написать

 

по предыдущему моему ответу- это к 2 относится.

А в 1 - переменную variable нужно написать в value, а в Target - локатор элемента. А его значение не нужно, он сам считает его и сохранит




#171491 Команда store в Selenium IDE - в чем ее смысл?

Отправлено автор: anna99 01 апреля 2019 - 14:06 в Selenium - Functional Testing

не понял

 

есть два шага

 

1

Command: store

Target: variable

Value: Text

 

2

Command: echo

Target:

Value: ${variable}

 

Log:

  • 1. store on variable with value Text OK
  • echo:
  • completed successfully

Где содержимое 'echo'?

 

https://www.dropbox....-52-56.jpg?dl=0

а попробуйте ${variable} в поле Target написать




#171487 Команда store в Selenium IDE - в чем ее смысл?

Отправлено автор: anna99 01 апреля 2019 - 07:31 в Selenium - Functional Testing

 

В вашем примере, уже заранее известно значение. Хотя опять же ввести вы можете Ставрополь, а в итоге будет введено ♥таврополь.

А store может пригодится, например, в таком случае. Допустим, вы в интернет-магазине вводите слово "диван" и вам нужно узнать, сколько товаров будет найдено. Заранее количество найденных товаров не известно. Вы сохраняете количество товаров в переменную "quantity" с помощью store, а затем сравниваете, чтобы число в ${quantity} != 0 .

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

Поняла))) Спасибо большое!

 

Попробовала. Объявила пункт вылета, как переменную dep со значением Ставрополь. Потом в сценарии, всегда, при заполнении поля Вылет обращаюсь к переменной ${dep}. И все хорошо в рамках одного етста. Если переменную сторю в одном тесте, а обращаюсь к ней уже в другом, то не работает(((




#171485 Команда store в Selenium IDE - в чем ее смысл?

Отправлено автор: anna99 01 апреля 2019 - 06:34 в Selenium - Functional Testing

В вашем примере, уже заранее известно значение. Хотя опять же ввести вы можете Ставрополь, а в итоге будет введено ♥таврополь.

А store может пригодится, например, в таком случае. Допустим, вы в интернет-магазине вводите слово "диван" и вам нужно узнать, сколько товаров будет найдено. Заранее количество найденных товаров не известно. Вы сохраняете количество товаров в переменную "quantity" с помощью store, а затем сравниваете, чтобы число в ${quantity} != 0 .

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

Поняла))) Спасибо большое!




#171484 Команда store в Selenium IDE - в чем ее смысл?

Отправлено автор: anna99 01 апреля 2019 - 06:33 в Selenium - Functional Testing

Мне в свое время помогли туториалы. возможны и Вы что-то полезное для себя найдете: :victory: 
1) http://www.software-...lenium-ide.html 
2) http://forworktests....enium.html#id_5

Спасибо большое! Обязательно посмотрю.