2016-10-03 10 views
1

2つの異なる文字列でリンクをクリックしたいとします。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。はい、タイトル変数はデフォルトのパラメータです。私は助けに感謝します。 :) – kevin

1

他の方法は次のとおりです。

FindElement(By.XPath("//a[contains(text(), 'Enforcement') and contains(text(), '" + title + "')]")).Click(); //enforcement inspector 
関連する問題