Java&Selenium自动化测试调用JS实现单击
2024-09-05 09:24:12
Java&Selenium自动化测试调用JS实现单击
/*
* the method of invoking js to do something
*
* @author davieyang
* @create 2018-08-05 1:37
*/
package util;
import org.openqa.selenium.*;
import java.util.Arrays; public class JavaScriptToDo {
/**
*
* @param driver 浏览器驱动
* @param xpath xpath定位表达式
*/
public static void javaScriptClick(WebDriver driver, String xpath) {
WebElement element = driver.findElement(By.xpath(xpath));
try{
if(element.isEnabled() && element.isDisplayed()){
System.out.println("使用JS进行也面元素单击");
//执行JS语句arguments[0].click();
((JavascriptExecutor) driver).executeScript("arguments[0].click();", element);
}else {
System.out.println("页面上元素无法进行单击操作");
}
}catch (StaleElementReferenceException e){
System.out.println("页面元素没有附加在页面中" + Arrays.toString(e.getStackTrace()));
}catch (NoSuchElementException e){
System.out.println("在页面中没有找到要操作的元素" + Arrays.toString(e.getStackTrace()));
}catch (Exception e){
System.out.println("无法完成单击操作" + Arrays.toString(e.getStackTrace()));
}
}
}
最新文章
- Unique Paths II
- 关于Class.getResource和ClassLoader.getResource的路径问题
- Grid画边框
- MVC4发布到IIS7报404错误
- OPENCV3.1+VS 坑我笔记!
- Centos 7下安装Oracle 12c
- JavaEE Tutorials (29) - Duke辅导案例研究示例
- JAVA面向对象思想
- NetFPGA-1G-CML从零开始环境配置
- 复习交换代数——Noether正规化
- 统计字符串中字符出现的次数(||和&;&;的区别)
- 【LeetCode刷题系列 - 003题】Longest Substring Without Repeating Characters
- Java基础——Oracle(一)
- Android开发——Fragment知识整理(一)
- table的td的1%
- Android之Glide(非常好用的图片加载框架)
- js使用s:property标签接收json格式数据
- Elastic stack ——X-Pack安装
- mysql数据库表插入单条数据/批量插入数据
- 九度OJ--1163(C++)