Я использую структуру огурца/ruby / capybara/siteprism, и у меня возникают проблемы с идентификацией элементов, так как либо мы пропускаем идентификаторы, имена и т. Д., Либо создаем их с в реальном времени.Невозможно определить элемент siteprism из заданного текста метки
В основном я пытался определить некоторые из этих элементов в объектной модели страницы сайта. Например, я пытался ввести некоторые данные в поле «ввода» для «First Name» ниже:
<div class="control-group">
<label class="control-label" for="input_field_dec_<random_number>">
First Name
<span class="required"></span>
</label>
<div class="controls">
<input id="input_field_dec_<random_number>" class=" span5" type="text" value="" scripttofire="SetUserFirstName('input_field_dec_<random_number>')" required="required" name="input_field_dec_<random_number>" data-val-required="First Name is required" data-val-regex-pattern="^[a-zA-Z0-9_ \-\']*$" data-val-regex="Only alphabetic and numeric characters allowed" data-val="true">
<span class="field-validation-valid help-inline" data-valmsg-for="input_field_dec_<random_number>" data-valmsg-replace="true"></span>
</div>
</div>
Есть ли способ, чтобы передать текст метки (например: «First Name '- игнорирование пробелов вокруг, что-то вроде - contains =' First Name '), а затем найти элемент ввода внутри, чтобы настроить его?
я что-то вдоль линий мышления:
element :first_name_field, :xpath, "//label[contains(text()='Continue'])/<and here something to find the input field?>" but cannot figure it out...
Try ': first_name_field,: поле«Первый Name'' –
@Thomas, что конкретный пример сработал. Однако, он не работает в следующем коде, который кажется мне похожим?
Это не будет работать в этом случае, потому что нет никакой ссылки на ярлык и ввод, поскольку метка не завершает ввод или не имеет атрибута 'для'. –