Я использую сумерки для тестирования браузера. Недавно начал пользоваться mdbootstrap, но не в этом дело. Дело в том, что mdb оборачивает выборки таким образом, что делает их непроверяемыми, как это обычно делаю я.
Что я делаю в своем лезвии:
<select class="mdb-select md-form" id="selectId" name="selectName">
@foreach($elements as $element)
<option value="{{ $element->id }}">{{ $element->display_name }}</option>
@endforeach
</select>
Как на самом деле выглядит мой DOM
<div class="select-wrapper mdb-select md-form">
<span class="caret">▼</span>
<input type="text" class="select-dropdown" readonly="true" data-activates="select-options-f8364f16-85fb-4f93-a212-a11ee81271f1" value="" data-cip-id="cIPJQ342845639">
<ul id="select-options-f8364f16-85fb-4f93-a212-a11ee81271f1" class="dropdown-content select-dropdown w-100">
<li class="active"><span class="filtrable">Some Text</span></li>
</ul>
<select class="mdb-select md-form initialized" id="selectId" name="selectName">
<option value="1"></option>
</select>
</div>
Попытка использовать обычный select('@selector', 'value');
приводит к ошибке "Element is not currently visible and may not be manipulated"
.
Есть идеи, как я могу проверить свои выборки сейчас?
Когда у меня есть только один выбор, я мог бы попытаться щелкнуть эти теги ul и li вручную, но когда у меня есть несколько из них truoble начинается. Идентификаторы оболочки непредсказуемы, поэтому я не могу их жестко запрограммировать.
click()
. Начните с чего-то вроде$browser->click('.select-wrapper')
. stackoverflow.com/a/49539988/4848587 и stackoverflow.com/a/51195175/4848587 похожие проблемы. - person Jonas Staudenmeir   schedule 05.12.2018$browser->elements('.select-wrapper')[$i]->click()
- person Jonas Staudenmeir   schedule 06.12.2018