Как игнорировать лишние пробелы после перехода на хром без головы - PullRequest
0 голосов
/ 20 ноября 2018

Недавно я переключил свои тесты на огурец с капибара-webkit на хром без головы.Теперь многие функции перестают работать, и

ожидается, что текст "закомментирован Дж. Смитчем" в "закомментирован как [ там два пробела ] Дж. Смит"

Есть ли способ сказать Капибаре игнорировать лишние пробелы?Или мне нужно добавить пробелы в определениях моих шагов, чтобы сделать ошибочные тесты зелеными?

ОБНОВЛЕНИЕ 1

В моей разметке   пробелы, которые не нормализованыкак это

<div>
  commented by
  &nbsp;
  <span>J. Smith</span>
</div>

1 Ответ

0 голосов
/ 20 ноября 2018

Полагаю, что в то же время вы переключились с capybara-webkit на селен с хромом без головы, вы также переключились с Capybara 2.x на 3.x.Одно из главных изменений в Capybara 3.x - это то, что он пытается вернуть больше пробелов, как это будет видно пользователю.Это означает, что если у вас есть символы в разметке, они не будут свернуты с окружающими пробелами, так как браузер этого не делает.Вы можете использовать опцию normalize_ws, чтобы получить результаты, более похожие на 2.x

expect(page).to have_text('blah blah', normalize_ws: true)

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

...