Если содержит не работал, я не думаю, что начинается с будет, поскольку формат идентификатора будет аналогичным (мое предположение), если идентификатор, который вы ищете, является первым из многих доступных аналогичных стартов с идентификатором, чем селена выберетэто. или вы можете объединить идентификатор с классом, чтобы сформировать уникальную комбинацию.
может быть, вы можете попробовать что-то вроде
//select[starts-with(@id,'XYZ_SV_') and contains(@class, 'clsSelectControl')]
Если это не работает. Вы должны искать предков, пока не найдете только один элемент, а затем вернуться к тому, что вам нужно. Можете ли вы добавить весь Dom, чтобы я мог сформировать xpath. Попробуйте получить уникальный способ идентификации элемента. Вы можете перейти к parent / siblings / ancestors, чтобы получить элемент, который вы ищете.
Вышла альфа-версия селена 4, вы можете добавить ее и использовать близлежащий тэг и перейти к методам выше, ниже, toRightOf, toLeftOf, near (50pixel) относительныйBy.
(Мое предложениепока не использует селен 4 в производственной среде, пока не будет получен стабильный финальный выпуск, но может быть опробован в локальной среде)