2016-10-03 2 views
1

Я бы хотел щелкнуть ссылку двумя разными строками.C# Selenium Webdriver - Как найти ссылку несколькими строками, а также используя ссылку в строке?

Я пробовал следующий код ниже, но он, похоже, не работает.

Любая помощь?

xPathString = String.Format("//a[contains(text(), 'Enforcement') and contains(text(), '{0}')]", title); 
FindElement(By.XPath(xPathString)).Click(); //enforcement inspector 

Сообщение об ошибке я получаю:

OpenQA.Selenium.NoSuchElementException: By.XPath: //a[contains(text(), 'Enforcement') and contains(text(), 'Inspector')] 

HREF тег для ссылки является:

/.../Enforcement/Inspector 

ответ

1

Вы должны проверять @hrefатрибут, а не текст:

//a[contains(@href, 'Enforcement') and contains(@href, '{0}')] 

И, убедитесь, что переменная title имеет значение строки Inspector.

+0

Благодаря @alecxe. Да переменная title является параметром по умолчанию. Я ценю помощь. :) – kevin

1

другой способ сделать это:

FindElement(By.XPath("//a[contains(text(), 'Enforcement') and contains(text(), '" + title + "')]")).Click(); //enforcement inspector 
Смежные вопросы