Selenium、WebDriverJSのJavaScript実装を使用しています。私はWebDriverJSの新機能ですが、Tryブロック内でコードがクラッシュするのはなぜですか?それはCatchブロックにも到達しません。ここに私のコードは次のとおりSeleniumがTryブロックでクラッシュする
try
{
driver.findElement(this.By.xpath("html/body/form/div[4]/div[1]/center[1]/div[15]/div[1]/a[1]/img[1]")).click();
catch (err)
{
driver.findElement(this.By.xpath("html/body/form/div[3]/div[1]/center[1]/div[15]/div[1]/a[1]/img[1]")).click();
}
そしてIはコンソールでこのエラーメッセージを得る:
NoSuchElementError:そのような要素:要素が見つかりません:{ "方法": "のXPath"、 "セレクタ":/div [1]/a [1]/img [1] "}
可能な限り、このエラーは、Tryブロック内のコードから発生します。
このエラーが発生してもコードを実行し続ける方法はありますか?
を使用してください。キャッチ文にもエラーが発生する可能性があります。 –
いいえ、私はすでにcatchブロック内のコードをテストしました。正しく動作しています。 – maximus009
xpathも非常に厄介です。 this.By.css( "div.someClass> a> img:nth-child(2)")のようなCSSパスを使用する方が良いです。 document.querySelector( "div.someClass")を使用して、ブラウザのコンソールでCSSパスをテストできます –