package com.gloryroad.Demo;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
public class JavaScriptExcutor {
/**
* 解决在某些环境下,使用click方法无效的情况
*/
public WebDriver driver;
private String url="http://www.sogou.com";
@BeforeMethod
public void setUp(){
driver=new FirefoxDriver();
driver.get(url);
}
@AfterMethod
public void tearDown(){
driver.close();
}
@Test
public void testHandlerFrame(){
WebElement searchinputbox=driver.findElement(By.id("query"));
WebElement searchButton=driver.findElement(By.id("stb"));
searchinputbox.sendKeys("使用JavaScript语句进行");
JavaScriptClick(searchButton);
}
public void JavaScriptClick(WebElement element){
try {
if (element.isEnabled() && element.isDisplayed()) {
((JavascriptExecutor)driver).executeScript("arguments[0].click();",element );
}else {
System.out.println("页面上的元素无法进行点击操作");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
使用Selenium操作JavaScript进行点击
原创wx5e6caa8b9792d 博主文章分类:测试经验总结 ©著作权
文章标签 javascript firefox 文章分类 后端开发
©著作权归作者所有:来自51CTO博客作者wx5e6caa8b9792d的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:Java的SAX解析代码二
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章