Капибара выбирает корневой узел, а не указанный узел - PullRequest
0 голосов
/ 11 января 2019

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

Я вызываю метод #find, передавая селектор css, который обычно возвращает определенный узел DOM или выдает ошибку.

card = find('.card__title', text: display_name).ancestor('.card')
expect(card).to have_no_selector('.read')

На сервере CI ошибка не выдается, скорее, переменная card имеет значение:

#<Capybara::Node::Element tag="html" path="/HTML">

и ожидания не оправдываются, как если бы я написал:

card = find(:xpath, '/html')

Для записи возвращаемое значение

card = find('.card__title', text: display_name).ancestor('.card')

На моем местном есть:

#<Capybara::Node::Element
  tag="article"
  path="/HTML/BODY/DIV[1]/DIV[2]/DIV[2]/DIV/ARTICLE[3]">

Что может быть причиной такого поведения?

...