@romanbiz если только 1 клик по 1-му елементу, то без цикла //a[contains(text(), 'Работай в программе ViPi')] - найдет конкретний 1 елемент.
Автор не дал конкретного вопроса, по одному или только 1 клик.
@Gang а перед использованием профиля делать его копию и после восстанавливать не вариант?
У меня там многопоток и 1 профиль может быть одновременно на разных потоках. Если я на одном потоке возьму чистый профиль и сделаю его копию, и потом удалю рабочий профиль и восстановлю чистую копию. Но другой поток в это же время может пользовать этот же рабочий профиль, и таким образом будет путаница.
По моему ни какой путаницы не будет. В одном месте у вас лежит прогретый профиль, каждый поток, прежде чем начать работу, копирует себе этот профиль.
Проверить существование элемента (проверять видно ли на экране) либо если тебе нужно найти то что 100% появится то ждать элемент и задать время таумаута .
IF (Переменная с результатом проверки) {
Если проверка true то перейти к метке, которую заранее нужно установить или сброс либо из логики скрипта fail или success , смотря что тебе нужно определять.
};