web自动化:8.1如何在浏览器发送js指令

建议阅读对象:没有前端基础,不会Javascript ,web自动化(selenium)小白

web自动化测试,为什么会selenium 还要学js指令?

前面几节讲了 selenium 的操作,但是还有一部分浏览器操作(如:页面滚动、时间选择、文件等)不能直接通过 selenium实现。所以,我们还需要了解一些简单的js指令,通过发送js指令让浏览器执行对应操作。

js是什么?

HTML 只负责静态显示
Javascript 前端工程师使用的编程语言。作用:让web网页实现动态化的效果。

几乎所以的浏览器会内置 Javascript 执行环境,所以可以直接在浏览器–发开者工具–Console 中编写执行js命令。

selenium原理图

在这里插入图片描述

js如何控制浏览器?

DOM(Document object model)
document 对象,表示当前的整个网页。输入document,则会返回这个网页的代码。
细节的东西这边不讲了,有兴趣可以自己查资料(主要我也是前端小白,怕讲不清楚反而误导大家)

练习:

1、定义一个name,并打印name

打印的语法:console.log(name)
在这里插入图片描述

2、元素定位

在python中 find_element(‘id’, ‘kw’) 通过webdriver 转化为 js指令 getElementById(“kw”),所以两个效果是一样的。
js指令只能修改前端展示,刷新下网页就恢复成原来的了。

# 定位百度输入框元素
el = document.getElementById("kw")  

# 修改该元素的value值(selenium只能获取属性,不能修改属性)
el.value = '花测试'		

# 输入框变置灰不能修改的状态
el.disabled = true

# 输入框变回可输入状态		
el.disabled = false	

# 清空网页。该方式可以更新或修改,甚至重写整个html
document.body.innerText = ''  

猜你喜欢

转载自blog.csdn.net/weixin_48415452/article/details/120133673