Selenium js 笔记
js的测试应用
1.基本元素定位,jquery操作,disable,readonly元素的操作,多窗口操作技巧,滚动的操作
在selenium中,driver对象有一个方法可以专门操作js,这个方法名为:executescript()
* Args:
-script:The Javascript to execute.
-\*args:Any applicable arguments for your Javascript
-Usage
driver.excute_script('return document.title;')
2.executeScript方法接收两个参数和一个返回值:
A: script,javascript代码片段,这段js代码片段是作为js函数的完整方法体,可以使用return语句作为函数的返回值。
B:args, 参数数组,参数数组用于将外部数据传递给script(js代码片段),script中可以通过arguments[index]方式索引args数组中的参数;参数数据类型(number, boolean, String, WebElement, List集合)
C.返回值,返回值是由js代码片段计算后通过return语句返回,返回值数据类型可以为(WebElement,Double,Long,Boolean,String,List或Map),没有return语句,这里返回数据为null。
3.js alert
String js = "alert(\"hello world\")";
JavascriptExecutor executor =driver;
executor.executeScript(js);
上面俩句可以写为 driver.executeScript(js);
4.通过js定位元素
String js2 = "document.getElementById('kw').value='hello'";
driver.executeScript(js2);
5.获得元素
String js3 ="var inputEle document.getElementById('kw');return inputEle;";
WebElement element = (WebElement) executor.executeScript(js3);
element.sendKeys("小码测试");
6.去除readonly属性
String js2 = "document.getElementById('train_date').removeAttribute('readonly')";
executor.executeScript(js2);
driver.findElement(By.id("train_date")).clear();
driver.findElement(By.id("train_date")).sendKeys("2021-01-05");
7.页面滚动
String js = "window.scrollTo(0,500)";
executor.executorScript(js);
8.滚动到最底部
String js = "window.scrollTo(0,document.body.scrollHeight)";
executor.executorScript(js);
9.用jquery执行js
String js = "$('#kw').val('nihao')";
executor.executorScript(js);
本文详细介绍了如何在SeleniumJS中进行基本的元素定位、jQuery操作、处理禁用与只读元素、窗口操作、页面滚动及使用jQuery执行脚本等测试技巧。通过示例代码展示了如何利用executeScript方法执行JavaScript,实现对网页元素的修改、获取和交互,以及处理页面警告对话框。此外,还涵盖了去除readonly属性和页面滚动到指定位置的方法。
1254

被折叠的 条评论
为什么被折叠?



