基于python实现ui自动化3.2selenium通过js定位元素(代码片段)

lht3347 lht3347     2022-12-04     699

关键词:

python-UI自动化之selenium元素定位

1.0 selenium工具介绍

1.0 selenium工具介绍

2.0 selenium环境搭建

2.0 selenium环境搭建

3.0 selenium常见8大元素定位

3.0 selenium - webdriver常见8大元素定位

3.1 selenium通过By定位元素

3.1 selenium通过By定位元素

3.2 selenium通过JS定位元素

selenium 并不是万能的,有时候页面上操作无法实现的,这时候就需要借助 JS 来完成了。

比如:页面是可滚动的,想操作屏幕下方的元素,是不能直接定位到,需要先滚动屏幕到下方,否则会报找不到元素异常。


这个时候就需要JS定位滚动条来滚动屏幕,使得操作的元素显示在当前页面上。Selenium提供了一个可执行JS定位的方法:execute_script(js脚本)

Selenium的8大元素定位,JS也可实现定位。

JS定位页面元素

学习JS定位需要用到JavaScript脚本的基础,有不了解的可通过w3c网上学习下JavaScript脚本。

附上JavaScript学习地址:
https://www.w3school.com.cn/js/index.asp

下面开始学习JS的一些定位处理。

简单的JS定位学习:

# 通过JS定位元素ID  --->  返回单个页面元素
document.getElementById(ID的值)
# 通过JS定位元素class name  --->  返回列表list元素
document.getElementsByClassName(class name的值)
# 通过JS定位元素name  --->  返回列表list元素
document.getElementsByName(name的值)
# 通过JS定位元素tag标签名称  --->  返回列表list元素
document.getElementsByTagName(tag name的值)
# 通过JS定位CSS样式对应的元素
document.querySelector(CSS定位语法) # ---> 返回单个页面元素
document.querySelectorAll(CSS定位语法) # --> 返回列表list元素
  • 通过JS定位输入框元素ID,并输入对应值

    JS定位元素.value = “输入对应的值”;

    # 1.通过JS定位输入框元素ID,并输入对应值
    js_ssk = 'document.getElementById("input").value = "Selenium元素定位";'
    # 执行JS脚本
    driver.execute_script(js_ssk);
    
  • 通过JS定位元素class name,并输入对应值

    # 2.通过JS定位元素class name,并输入对应值
    js_ssk = 'document.getElementsByClassName("lowie-bg")[0].value = "Selenium元素定位";'
    # 执行JS脚本
    driver.execute_script(js_ssk);
    
  • 通过JS定位元素name,并输入对应值

    # 3.通过JS定位元素name,并输入对应值
    js_ssk = 'document.getElementsByName("q")[0].value = "Selenium元素定位";'
    # 执行JS脚本
    driver.execute_script(js_ssk);
    
  • 通过JS定位元素标签Tag name,并输入对应值

    # 4.通过JS定位元素标签Tag name,并输入对应值
    js_ssk = 'document.getElementsByTagName("input")[4].value = "Selenium元素定";'
    # 执行JS脚本
    driver.execute_script(js_ssk);
    
  • 通过JS定位CSS样式对应的元素,并输入对应值

    # 5.通过JS定位CSS样式对应的元素,并输入对应值
    js_ssk = 'document.querySelector("#input").value="Selenium元素定位";'
    # 执行JS脚本
    driver.execute_script(js_ssk);
    

JS定位点击按钮通过click()方法点击。
以下附上代码:


学习使我快乐,每天进步一点点,跳出舒适区!!

通过JS处理浏览器滚动条的下篇文章更新!

结尾


创作不易,希望本文对你有帮助,动起你们的小手手点下赞哈(一键三连更好),Thanks♪(・ω・)ノ。

基于python实现ui自动化4.1selenium发送163邮箱邮件(代码片段)

python-UI自动化1.0selenium工具介绍2.0selenium环境搭建3Selenium的元素定位3.0selenium常见8大元素定位3.1selenium通过By定位元素3.2selenium通过JS定位元素3.3JS处理浏览器滚动条3.4JS处理日历控件(删除readonly属性)4selenium多表单(iframe/fra... 查看详情

基于python实现ui自动化4.1selenium发送163邮箱邮件(代码片段)

python-UI自动化1.0selenium工具介绍2.0selenium环境搭建3Selenium的元素定位3.0selenium常见8大元素定位3.1selenium通过By定位元素3.2selenium通过JS定位元素3.3JS处理浏览器滚动条3.4JS处理日历控件(删除readonly属性)4selenium多表单(iframe/fra... 查看详情

基于python实现ui自动化5.selenium实现获取页面元素属性(内容标题url浏览器名称等)(代码片段)

python-UI自动化1.selenium工具介绍2.selenium环境搭建3Selenium的元素定位3.0selenium常见8大元素定位3.1selenium通过By定位元素3.2selenium通过JS定位元素3.3JS处理浏览器滚动条3.4JS处理日历控件(删除readonly属性)4.selenium多表单(iframe/fram... 查看详情

基于python实现ui自动化3.3selenium-js处理浏览器滚动条(代码片段)

python-UI自动化之selenium元素定位1.0selenium工具介绍2.0selenium环境搭建3.0selenium常见8大元素定位3.1selenium通过By定位元素3.2selenium通过JS定位元素3.3JS处理浏览器滚动条控制浏览器的高度控制横向滚动条结尾1.0selenium工具介绍1.0selenium工... 查看详情

基于python实现ui自动化6.selenium实现浏览器相关操作(最大化自定义宽高前进后退)(代码片段)

python-UI自动化1.selenium工具介绍2.selenium环境搭建3Selenium的元素定位3.0selenium常见8大元素定位3.1selenium通过By定位元素3.2selenium通过JS定位元素3.3JS处理浏览器滚动条3.4JS处理日历控件(删除readonly属性)4.selenium多表单(iframe/fram... 查看详情

基于python实现ui自动化6.selenium实现浏览器相关操作(最大化自定义宽高前进后退)(代码片段)

python-UI自动化1.selenium工具介绍2.selenium环境搭建3Selenium的元素定位3.0selenium常见8大元素定位3.1selenium通过By定位元素3.2selenium通过JS定位元素3.3JS处理浏览器滚动条3.4JS处理日历控件(删除readonly属性)4.selenium多表单(iframe/fram... 查看详情

基于python实现ui自动化4.一文搞定selenium多表单(iframe/frame)切换(代码片段)

python-UI自动化1.0selenium工具介绍2.0selenium环境搭建3Selenium的元素定位3.0selenium常见8大元素定位3.1selenium通过By定位元素3.2selenium通过JS定位元素3.3JS处理浏览器滚动条3.4JS处理日历控件(删除readonly属性)4selenium多表单(iframe/fra... 查看详情

基于python实现ui自动化5.selenium实现获取页面元素属性(内容标题url浏览器名称等)(代码片段)

python-UI自动化1.selenium工具介绍2.selenium环境搭建3Selenium的元素定位3.0selenium常见8大元素定位3.1selenium通过By定位元素3.2selenium通过JS定位元素3.3JS处理浏览器滚动条3.4JS处理日历控件(删除readonly属性)4.selenium多表单(iframe/fram... 查看详情

基于python实现ui自动化1.0selenium工具介绍

【基于python实现UI自动化】1.0selenium工具介绍Selenium介绍Selenium的发展Selenium1Selenium2Selenium3Selenium4Selenium介绍Selenium是一款免费开源WebUI自动化测试框架。支持多语言(Python、Java、Ruby等)、多平台开发、以及多浏览器(IE... 查看详情

基于python实现ui自动化2.0selenium环境搭建(代码片段)

【基于python实现UI自动化】selenium环境搭建1.0selenium工具介绍2.0selenium环境搭建Windows搭建安装Python安装Selenium安装过程中出现的问题Selenium版本升级安装PyCharmPyCharm项目安装Selenium安装浏览器驱动Chrome为例编写第一个自动化脚本3.0sele... 查看详情

自动化测试方案

自动化测试体系方案方案1全编写代码流程UI自动化:使用python或java,配合selenium库及pytest框架做UI自动化测试。(通过selenium的webdriver驱动,驱使浏览器)1.WebDriverAPI(基于Java、Python)java:下载下来... 查看详情

基于python实现ui自动化3.1selenium通过by定位元素(代码片段)

python-UI自动化之selenium元素定位1.0selenium工具介绍2.0selenium环境搭建3.0selenium常见8大元素定位3.1selenium通过By定位元素结尾1.0selenium工具介绍1.0selenium工具介绍2.0selenium环境搭建2.0selenium环境搭建3.0selenium常见8大元素定位3.0selenium-webdri... 查看详情

基于python实现ui自动化3.0selenium-webdriver常见8大元素定位(代码片段)

python-UI自动化之selenium元素定位1.0selenium工具介绍2.0selenium环境搭建3.0selenium元素定位selenium常见8大元素定位通过ID定位通过classname定位通过name定位链接文本linktext定位部分链接文本partiallinktext定位通过tagname定位通过Xpath定位Xpath绝... 查看详情

python+selenium.webdriver实现web端ui自动化测试

本篇记录基于Python+Selenium.webdriver实现WEB端UI自动化测试,其中测试用例使用excel维护。 1.项目选取(登录页无验证码校验的项目)该示例选取的是登录页不需要输入验证码校验的基础页面(考虑到现在大部分项目都是需要进... 查看详情

接口自动化基于python+testlink+jenkins实现的接口自动化测试框架

1、  开发环境win7PyCharm4.0.5python3.3.2 testlink-1.9.14下载地址:安装教程: TestLink-API-Python-client-master下载地址: 2、  主要功能逻辑介绍  3、  框架功能简介1、框架集成了Testlink,可使用Testlink灵活对测试项目,测... 查看详情

ansible简介

运维的未来是让研发人员能够借助工具、自动化和流程,在运维人员干预极少的情况下部署和运营服务,从而实现自助服务。每个角色都应该女里使功过实现自动化。——运维的未来1.自动化运维工具自动化运维工具能够帮助运... 查看详情

web自动化基于python+selenium+php+ftp实现的轻量级web自动化测试框架

1、  开发环境win764 PyCharm4.0.5 setuptools-29.0.1.zip下载地址:setuptools-29.0.1.zip_免费高速下载|百度网盘-分享无限制官方下载地址:setuptools·PyPI python3.3.2 mysql-connector-python-2.1.4-py3.3-win64下载地址:mysql-connector-python-2.1.4-py... 查看详情

python自动化之selenium以及接口自动化(代码片段)

...鼠标和键盘操作文件上传操作页面切换基于网易云的登录自动化实战unittest框架自动化设计模式(封装)前后置处理setUp和tearDownsetUpClass和setDownClass生成报告断言DDT+Excel数据驱动pytest默认规则执行(运行)主函... 查看详情