Я пишу тест, который может войти на сайт. Я использую C#, с Selenium.
1) есть два идентификатора для пароля ?! зачем кому-то это кодировать?
2) Идентификатор содержит номер, который является динамическим и продолжает меняться каждый раз, когда страница загружается.Элемент выбора селена с несколькими атрибутами, когда идентификатор является динамическим
только отличается с именем идентификатор:
id="txtPassword_155799780_I_CLND"
id="txtPassword_155799780_I"
Я попробовал все.
driver.FindElement(By.XPath(".//div[starts-with(@id,'txtPass') and contains(@text(),'I_CLND')]"));
driver.FindElement(By.XPath("//input[starts-with(@id,'txtPassword_')]")[2]);
<input class="dxeEditArea_DevEx dxeEditAreaSys dxh0" id="txtPassword_156029875_I_CLND" type="text" tabindex="0" saveddisplay="[object Object]">
<input class="dxeEditArea_DevEx dxeEditAreaSys dxh0" id="txtPassword_156029875_I" name="txtPassword_156029875" onfocus="ASPx.EGotFocus('txtPassword_156029875')" onblur="ASPx.ELostFocus('txtPassword_156029875')" onchange="ASPx.EValueChanged('txtPassword_156029875')" type="password" saveddisplay="[object Object]" savedspellcheck="[object Object]" spellcheck="false" style="display: none;">
Благодаря
Благодарим за добавление html. Добавлены некоторые варианты для вас. – Dazed
Я действительно редактировал свой вопрос. Надеюсь, теперь это яснее. –
Попробуйте выше, и если он сработает, примите ответ. Если не сообщите нам, что произошло. – Dazed