Я пытаюсь проверить наличие некоторых полей формы в навигационной панели начальной загрузки и не могу найти правильную комбинацию селекторов Capybara, чтобы найти их.
Я пробовал следующие варианты в Capybara:
should have_selector('id', text: 'email')
should have_selector('name', text: 'email')
should have_selector('div.input.id', text: 'email')
should have_selector('div.input.placeholder', text: 'email')
, и я всегда получаю сообщение об ошибке:
Failure/Error: expect (should have_selector('div.input.placeholder', text: 'email'))
expected to find visible css "div.input.placeholder" with text "email" but there were no matches
Я довольно новичок в капибаре, котораяВозможно, это моя проблема, но я просмотрел документацию, и похоже, что она должна работать.
Я предполагаю, что это как-то связано с тем, что она скрыта, но она видна пользователю, когда выперейдите на страницу, поэтому я не уверен, как сделать так, чтобы она была видимой для капибары.
Вот код HTML, который представлен:
<div class="navbar-collapse collapse">
<form class="navbar-form navbar-right" role="form" action="/sessions" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value="✓" /><input type="hidden" name="authenticity_token" value="klUhJ9epE/Sr/N0okPq5WMWi2XJuQXiAPmdg/9Qf2d8TBX+htbIdUPRh01YPWqMTRin8vTlVG/ECUtvKNczc+A==" />
<div class="form-group">
<input type="text" name="email" id="email" class="form-control" placeholder="Email" />
</div>
<div class="form-group">
<input type="password" name="password" id="password" class="form-control" placeholder="Password" />
</div>
<input type="submit" name="commit" value="Sign in" class="btn btn-primary" />
</form>
</div><!--/.navbar-collapse -->
Вот представлениефактической страницы: