1

数え切れないほどの Web ページを検索しましたが、質問に対する適切な回答が得られませんでした。私は C# を使用して Selenium 2.30 を使用しています。

私は試した

if (browser.FindElement(By.XPath("xpath")).Displayed)

私は試した

if (browser.FindElements(By.XPath("xpath")).Count !=0)

また、

IWebElement element = browser.FindElement(By.XPath("xpath"));
if (element.Displayed == true)

要素が存在する場合にのみ機能しますが、存在しない場合は例外を引き出します。しかし、それは必ずしも例外ではありません。else{} ステートメントにそれを処理する何かがあります。Web ドライバーが最初の時点で私を止めてほしくないのです。

私が今していることは、

IWebElement element = null;
try
{
   element = browser.FindElement(By.XPath("xpath"));
}
catch
{

}
if (element != null)

この方法は今のところうまくいきますが、これが最善の解決策だとは思いません。誰かが私にもっと良い方法を教えていただければ幸いです。

4

1 に答える 1