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万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章