浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
作者:Tester_谜城 发布时间:2023-10-19 04:49:03
1、打开指定的网页地址
我们使用selenium进行自动化测试时,打开浏览器之后,第一步就是让浏览器访问我们指定的地址,可使用get方法实现
from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/') # 本行用于访问指定的地址
2、获取当前页面url
我们在测试过程中,有时需要获取当前页面的url以判断是否跳转到指定页面,获取页面url的方法如下:
from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
url = driver.current_url # 本行用于获取当前页面的url,即百度首页地址
print(url)
3、返回按钮
返回按钮,也就是浏览器左上角的 ← 键,模拟点击此按钮操作如下
driver.back()
如,在百度搜索框中输入selenium并点击搜索,然后点击返回按钮,实现如下
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium') #搜索框输入selenium
driver.find_element(By.ID, 'su').click() # 点击百度一下
time.sleep(3)
driver.back() # 返回
本段代码表示在输入框中输入selenium后,再点击百度一下进行搜索,3秒后再返回百度首页
4、前进按钮
前进按钮,相对于后退的 ← ,是浏览器左上角的 → 按钮 ,操作此按钮方法如下:
driver.forward()
如,在百度搜索框中输入selenium并点击搜索,然后点击返回按钮后再点击前进按钮,实现如下
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium') #搜索框输入selenium
driver.find_element(By.ID, 'su').click() # 点击百度一下
driver.back() # 返回
time.sleep(3)
driver.forward() # 前进
本段代码表示在输入框中输入selenium后,再点击百度一下进行搜索,然后返回操作,3秒后再进行前进操作,最终停留在输入selenium之后执行搜索的结果页面
5、刷新页面
测试过程中,刷新页面是经常使用的操作,selenium进行刷新操作方法如下
driver.refresh()
使用此方法类似于按下F5或点击左上角的刷新按钮
from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.refresh() # 刷新页面
本段代码表示打开百度首页并刷新页面
6、获取当前页面title
测试过程中,可以使用selenium获取当前页面的title,方法如下:
driver.title
使用selenium获取百度首页的title,示例如下:
from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
title = driver.title # 获取当前页面title
print(title)
以上代码运行后,将在控制台输出百度首页的title 百度一下,你就知道
7、窗口大小操作
常用的窗口操作有设置窗口大小、最大化窗口、最小化窗口、全屏窗口
① 设置窗口大小
driver.set_window_size(1920, 1080)
② 最大化窗口
driver.maximize_window()
③ 最小化窗口
driver.minimize_window()
最小化窗口是selenium4的新功能,selenium3不能使用此方法
④ 全屏窗口,相当于大多数浏览器中按下F11
driver.fullscreen_window()
示例代码:
from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.set_window_size(1920, 1080) # 设置窗口大小 1920*1080
driver.minimize_window() # 最小化窗口
driver.maximize_window() # 最大化窗口
driver.fullscreen_window() # 全屏窗口
本段代码打开百度首页后,先将浏览器窗口大小设置为1920*1080,然后依次最小化窗口、最大化窗口、全屏窗口,实际进行测试时,需要根据需要进行设置
8、退出
测试执行完成后,需要退出浏览器,否则多次运行测试会导致系统残留大量的驱动进程,这些进程会消耗计算机资源,导致系统越来越卡,所以养成测试完成后关闭浏览器是个良好习惯
退出浏览器操作如下:
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium') #搜索框输入selenium
driver.find_element(By.ID, 'su').click() # 点击百度一下
driver.quit() # 退出浏览器
本段代码表示打开百度首页,再输入框中 输入selenium后点击百度一下,完成搜索后退出浏览器
来源:https://blog.csdn.net/qq_18298049/article/details/117048850


猜你喜欢
- 如下,以创建系统用户举例,配置文件配置普通用户信息,登入后切换root用户,创建一个指定名字和密码的系统用户:def create_user
- Django配置文件settings简单说明,包含时区语言等打开创建好的django工程,查看settings.py文件BASE_DIR =
- 正常的页面跳转的api大家应该都清楚,但是涉及到多页面来回跳转以及返回到导航页的时候就需要一些技巧来进行处理,之前找了挺多文章也没有很详细的
- 今天在看框架的时候无意间看到了document.compatMode,经过一番资料查找,终于搞懂了。文档模式在开发中貌似很少用到,最常见的是
- 八卦是种优良品质,特别是用在技术上时。来看几个Reset CSS的八卦问题吧:你知道世界上第一份reset.css在哪么?*&nb
- 本文实例讲述了python实现的多任务版udp聊天器。分享给大家供大家参考,具体如下:说明编写一个有2个线程的程序线程1用来接收数据然后显示
- 顾名思义, 条件查询就是使用where字句 , 将满足条件的数据筛选出来语法 :select < 结果 > from <
- 本文实例讲述了Python面向对象之私有属性和私有方法。分享给大家供大家参考,具体如下:01. 应用场景及定义方式应用场景在实际开发中,对象
- 在 Python 中,列表是一种非常常见且强大的数据类型。但有时候,我们需要从一个列表中删除特定元素,尤其是当这个元素出现多次时。本文将介绍
- 一、asp.net中导出Execl的方法:在asp.net中导出Execl有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文
- 众所周知,Mac自带python2,但无奈我们想使用新版本,因此我们需要安装python3安装python3我使用了homebrew,网上也
- 由于日期存在不同位数的月份或天数,出现参差不齐,既不美观也在日期比较时不好操作。如使用本涵数就会排列整齐:'================
- 如何用下拉列表显示数据库里的内容? 我们来看看实现这个功能的程序:<%Dim objDC, objRSS
- 前一阵看到一篇文章《使用css3仿造window7的开始菜单》,文中仅使用CSS3 实现了Windows 7 开始菜单的动态效果,很久以来一
- 一、准备工作:1.建立一个 WINDOWS 用户,设置为管理员权限,并设置密码,作为发布快照文件的有效访问用户。2.在SQL SERVER下
- 前言图像处理技术是计算机视觉项目的核心,通常是计算机视觉项目中的关键工具,可以使用它们来完成各种计算机视觉任务。在本文中,将介绍如何使用 O
- 一、乱码的原因:1、 client客户端的编码不是utf82、server端的编码不是utf83、database数据库的编码不是utf84
- 以下的文章主要是对MySQL性能影响关系紧密的五大配置参数的介绍,我前几天在相关网站看见对MySQL性能影响关系紧密的五大配置参数的资料,觉
- 本文实例为大家分享了python+rsync精确同步指定格式文件的具体代码,供大家参考,具体内容如下# coding: utf-8#!/us
- 前言go语言并没有面向对象的相关概念,go语言提到的接口和java、c++等语言提到的接口不同,它不会显示的说明实现了接口,没有继承、子类、