Проверка порядка / составления URL, когда у вас есть элементы, извлеченные из других источников - PullRequest
0 голосов
/ 15 января 2019

Я хочу проверить порядок URL-адреса, созданного в результате многогранной навигации на веб-сайте разработки.

EG http://EcomWebsite.com/region/s/element1/element2/element3

В рамках другого этапа тестирования я извлек нужные мне строки и могу проверить, присутствуют ли они в URL. Я делал это как

assertThat(displayShopPage.getCurrentURL(),containsString(displayShopPage.element1()));
assertThat(displayShopPage.getCurrentURL(),containsString(displayShopPage.element2()));
assertThat(displayShopPage.getCurrentURL(),containsString(displayShopPage.element3()));

но я упоминаю, что мне нужно проверить порядок URL.

Рассматриваемый шаг

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

Я все еще немного новичок в Java, Selenium и BDD, поэтому я благодарю вас за любую помощь, которую вы можете подсказать.

EDIT: Я пытаюсь избежать жестко закодированных URL-адресов и того, что я хочу проверить в URL-адресе по нескольким причинам.

Element1 и т. Д. Принадлежат классам, которые извлекают текст из опций элемента фасетной навигации.

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

Поэтому я извлекаю строку из элементов для сравнения с URL-адресом, а не просто проверяю сам URL-адрес.

enter image description here

1 Ответ

0 голосов
/ 15 января 2019

getCurrentURL () возвращает строку, верно? Почему бы просто не составить ожидаемый URL как строку, а затем сравнить строки?

currentUrl = displayShopPage.getCurrentURL()
expectedUrl = "http://EcomWebsite.com/" + displayShopPage.CF_PanelText() + "/s/" + displayShopPage.FacetGroup2OptionPanelText()   # compose this from your page source...it isn't clear above what the component order needs to be
assertEquals(currentUrl, expectedUrl)  # I made this up, I don't know the proper syntax for comparing strings
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...