自動テストをSeleniumで書いていて要素をXpathで取得しようとした時に落とし穴にハマりました。
driver.findElement( By.xpath("//*[@id='book_list ']/div/div/table/tbody/tr[4]/td[1]/a" ) );
NoSuchElementErrorが出てしまいました。
何が問題なのかと考えていると…
なんとidの’book_list ‘の最後に空白が…
あまり意識していなかったのですがきちんと空白まで含めたidで検索していたそうです。
chromeのデベロッパーツールからXpathを取得していたので大丈夫だと過信していました。