Selenium23-JavaScript
执行JavaScript
- JavaScript(简称js)是运行在客户端(浏览器)和服务器端的脚本语言,允许将静态网页转换为交互式网页。
- 可以通过Selenium执行js,这使selenium拥有更为强大的能力。
执行JavaScript应用场景
- 直接使用js操作页面,能解决很多click()或send_keys(“xx”)不生效的问题
- 全页面截屏、或者高亮元素截屏
- 页面滚动
- 处理时间控件的输入(移除元素隐藏、禁用、只读等限制属性)
执行JavaScript语法
driver.execute_script(js,*args)
element = driver.find_element(By.ID,"keyword")
style = "background:red;border:2px solid yellow;"
driver.execute_script("arguments[0].setAttribute('style',arguments[1]);",element,style)
- 在js里使用关键字return可以返回js的执行结果
title = driver.execute_script("return document.title")
print(title)
JavaScript设置后截屏
用js点击元素和输入数据
页面滚动
滚动到指定页面元素位置
测试日历控件
- 日历控件测试问题
- Selenium无法模拟日历手工操作时选择日期的具体步骤
- Selenium无法模拟日历手工操作时选择日期的具体步骤
- Selenium日历控件处理方式
- 写js代码来去除日期的readonly属性:
页面元素.removeAttribute(“readonly”); - 写js代码来给日期文本框的value赋值:
页面元素.value=”2022-06-01”;
- 写js代码来去除日期的readonly属性:
- https://news.sina.com.cn/ 设置日历日期为:2022-06-01
本文来自博客园,作者:暄总-tester,转载请注明原文链接:https://www.cnblogs.com/sean-test/p/17005829.html