"From Date"と "To Date"を持つカレンダーから日付を検索するために使用している2つのコードセグメントを次に示します。Java Selenium - xpathを使用した検索で検索された要素が見つかりません
webDriver.findElement(By.xpath("//table/tbody/tr/a[contains(text(),'October 30')]")).click();
webDriver.findElement(By.xpath("//table/tbody/tr/a[contains(text(),'October 31')]")).click();
エラーメッセージを示しています。そのような要素:要素が見つかりません:org.openqa.selenium.NoSuchElementExceptionスレッドで 例外 "メイン" { "方法": "のXPath"、 "選択": "//table/tbody/tr/a [contains(text()、 'October 30')] "}
コードセグメントイメージ: お手数をおかけしてください。ありがとうございました。 (少なくとも)修正する
feedback alecxeに感謝します。それは部分的に問題を解決しました。 [From]と[To Date]フィールドがクリックされていても、[From Date]が1秒未満で消去され、レポートが選択された日付範囲で生成されると、選択した日付範囲が[To Date] From DateとTo Dateフィールドの両方に適用されます。 – mkarim
@mkarimええ、私はあなたが文脈特有の検索を行うべきだと思っています。つまり、単に '// table/...'を持つのではなく、 '// table [@ id = 'MainContent_FromDate' ]/... 'を、また同様に日付を指定します。 – alecxe
遅く返事を申し訳ありません。私はBy.xpathを使ってこれを解決できました。 From Dateのコードは次のとおりです。clickFromDate = webDriver.findElement(By.xpath( "/ html/body/form [@ id = 'ctl01']/div [@ class = 'container-fluid body-content']/div [1]/table [@ id = 'MainContent_FromDate']/tbody [@ class = 'container']/div [@ class = 'row'] [2]/div [@ class = 'col-sm-6']/tr [3]/td [1]/a ")); \t \t clickFromDate.click(); – mkarim