Xpath для соответствия регистрозависимости нескольких строк

Мне нужно ввести значение поля в приложении, а не уникальный атрибут для этого поля. Поэтому я использую функцию text(), и это сработало. Это приложение немного меняется между поставщиками.

В приложении для vendor1 имя поля: Физический адрес улицы

для другого поставщика это физический адрес

Streed и Address чувствительны к регистру между двумя поставщиками, и из-за этого мой скрипт не работает.

Мой xpath, который работает для второго поставщика, но не работает для первого:

//tr[td[contains(text(),'Physical Street Address')]]/td//input[contains(@id, 'part1')]

Я проверил с переводом, но он не работает.

2 ответа

Не уверен почему translate() не работал на вашем конце. Возможно, ваши испытания кода помогли нам отладить проблему. Вы можете использовать следующее решение:

//tr[td[translate('Physical Street Address','abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')]]/td//input[contains(@id, 'part1')]

Я уверен, что есть более элегантное решение, но я думаю, что оно должно работать тоже

//tr[td[contains(text(),'Physical Street Address') or contains(text(),'Physical street Address')]]/td//input[contains(@id, 'part1')]
Другие вопросы по тегам