Failure Sharing

Bootup your energy with sharing failure.

要素が隠れていて、クリックのテストケースができない場合

問題

要素がnot visibleになっていて、クリック動作が動かなかった→テスト失敗 f:id:woosyume:20180916234256p:plain

どこが問題なのか

f:id:woosyume:20180916234720p:plain

  1. CSS選択ができない
  2. XPathも使えない

原因

単に当たる要素が見える化されてないから。

解決策

クリックをする前に、コードレベルでJSとして値をVisibleに変換する。

     WebElement element = driver.findElement(By.xpath("//*[@id=\"traveler-selector-hp-hotel\"]/div/ul/li/button"));

        // ここ
        String js = "arguments[0].style.height='auto'; arguments[0].style.visibility='visible';";
        Execute the Java Script for the element which we find out
        ((JavascriptExecutor) driver).executeScript(js, element);
        
        element.click();

コミット

github.com

参考記事

learn-automation.com