seleniumWebDriver的API高級應用_11_1

seleniumWebDriver的API高級應用_11_1

1.//當element.click()失效時可用以下方法

  //使用JavascriptExecutor對象的executeScript("arguments[0].click()",element)方法實現元素單擊動作

@Test

public void f() {

      driver.get("http://www.sogou.com");

      WebElementinputElement=driver.findElement(By.id("query"));

      WebElementbuttonElement=driver.findElement(By.id("stb"));

      inputElement.sendKeys("天氣");

      //使用javascriptexecutor執行單擊按鈕

      if(buttonElement.isEnabled()&&buttonElement.isDisplayed()){

           try{

                 ((JavascriptExecutor)driver).executeScript("arguments[0].click()",buttonElement);

           }catch(Exceptione){

                 e.printStackTrace();

           }

      }else{

           System.out.println("頁面上的元素沒有顯示出來或無法進行單擊操作");

      }

}

 

2//在Ajax方式產生的浮動框中單擊選擇包含某個關鍵字的選項

driver.get("http://www.sogou.com");

WebElementinputBox=driver.findElement(By.id("query"));

inputBox.click();

Thread.sleep(3000);

List<WebElement>listResult=driver.findElements(By.xpath("/html/body/div[2]/div[2]/div[4]/div/div[1]/ul/li"));

for(WebElement we:listResult)

{

      System.out.println(we.getText());

      if(we.getText().contains("天氣")){

           we.click();

           break;

      }

}

發佈了46 篇原創文章 · 獲贊 5 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章