Selenium与页面的交互实战

本文详细介绍了使用Selenium进行UI自动化测试的基本操作,包括浏览器控制、页面元素定位、键盘事件模拟等,通过实例展示了如何在实际项目中应用这些技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#在学习UI自动化后我们使用到的selenium提供了许多API方法与页面进行交互,如点击、键盘输入、打开关闭网页、输入文字、等 ( selenium之键盘事件实战  )

#webdriver对浏览器提供了很多属性来对浏览器进行操作,常用的如下代码,代码中每个操作都有指定的备注

#-*-coding:utf-8-*-
#authou:shichao


from selenium import webdriver
import time as t
dr = webdriver.Chrome()


# 获取执行的浏览器.name
print('执行的浏览器为:{0}'.format(dr.name))


# 浏览器最大化.作用在于测试UI界面时页面窗口分辨率大小,一般使用最大化测试最佳,方法为.maximize_window
dr.maximize_window()


# 打开访问地址.打开测试地址用到的方法是get方法,它的参数是要打开的测试页面的地址。例如,要测试打开百度(http://www.baidu.com)
dr.get('http://www.baidu.com')


t.sleep(1)
# 刷新.用户页面数据更新或者刷新结果等需要使用到
dr.refresh


t.sleep(2)
# 获取访问的页面地址
print('get_baidu_ulr:{0}'.format(dr.current_url))


t.sleep(2)
# 获取腾讯百度搜索页登录页的代码
print('页面代码:{0}'.format(dr.page_source))


t.sleep(10)
dr.quit()
# 关闭程序.在Selenium中,quit 方法用来退出驱动程序(Driver)并关闭执行的浏览器;而close方法用来关闭执行的浏览器,所以关闭程序建议使用quit方法。

#多窗口实践 : 窗口处理的方法,current_window_handle 用来获取当前浏览器的窗口句柄,window_handles 用来获取浏览器的所有窗口句柄。如下,实现在新浪登录页面点击注册,在注册页面邮箱地址输入框中输入邮箱地址,再次跳转到登录页面。

#-*-coding:utf-8-*-
#authou:shichao
from selenium import webdriver
import time as t


dr = webdriver.Chrome()
dr.maximize_window()
dr.get('https://mail.qq.com/')
dr.implicitly_wait(10)  # 隐形等待 10秒
print('get_mail_title:{0}'.format(dr.title))
# 获取腾讯微博页面的标题
t.sleep(1)
JB = dr.current_window_handle
# 获取当前登录页窗口的句柄
print('当前登录页窗口句柄:', JB)
t.sleep(5)
dr.switch_to.frame('login_frame')
# 进入frame页面内
t.sleep(3)
dr.find_element_by_xpath('//*[@id="forgetpwd"]').click()
# 点击qq邮箱的忘了密码
t.sleep(3)
JBS = dr.window_handles
# 获取当前窗口句柄集权合(列表类型)
for JBK in JBS:
    #判断JB不是当前窗口句柄
    if JBK != JB:
        dr.switch_to.window(JBK)
        # driver.switch_to.window(handles[num]) # 跳转到第num个窗口,从0开始 多种写法
        t.sleep(1)
        dr.close()
        #关闭注册页面


#切换到登录页面
dr.switch_to.window(JB)
t.sleep(1)
dr.refresh()
# 刷新页面
dr.quit()

以上就是UI自动化中与页面常操作交互,后期会持续更新,简单操作,只求每天进步一点,python都不断地更新,你能力还不更新,还在等什么.

(识别下方二维码持续学习)

公号后台回复"测试""Python"领取系统学习资料,并且希望大家有好的文章,或者有更好的创新,欢迎分享给小石学习,同时也将此文章分享给你的朋友&朋友圈

精彩好文推荐

Python+selenium+unittest+HTMLTestReportCN单元测试框架分享

selenium之键盘事件实战

Pycharm最舒服的主题风格

测试工程师必备模板三件套


题图:Python测试社区

(识别上方二维码加测试群)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值