Selenium:自动化测试的领航者

📝 面试求职: 「面试试题小程序」 ,内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试,命中率杠杠的。(大家刷起来…)

📝 职场经验干货:

软件测试工程师简历上如何编写个人信息(一周8个面试)

软件测试工程师简历上如何编写专业技能(一周8个面试)

软件测试工程师简历上如何编写项目经验(一周8个面试)

软件测试工程师简历上如何编写个人荣誉(一周8个面试)

软件测试行情分享(这些都不了解就别贸然冲了.)

软件测试面试重点,搞清楚这些轻松拿到年薪30W+

软件测试面试刷题小程序免费使用(永久使用)


Python自动化测试领域有个“大哥大”,就是 Selenium 。它就像是给程序装上了一双眼睛和一双手,能帮我们在浏览器里点点点、输入框里敲敲敲。不管是测试网页功能,还是爬取一些数据,都能派上用场。写几行代码就能让浏览器自己动起来,想想就觉得很酷。不过很多小伙伴一上手就被各种配置和代码搞得晕头转向,今天我就带大家一步步上手Selenium。

1. 环境配置咋整

安装Selenium超简单,pip一条命令搞定:

pip install selenium

不过光装这个不够,还得装个浏览器驱动。Chrome浏览器就要装ChromeDriver,Firefox就要装GeckoDriver。驱动版本要跟浏览器版本匹配,不然会报错。

温馨提示:驱动下载完记得把路径加到环境变量里,要不代码里还得写一堆配置,麻烦死了。

2. 浏览器自动化基础操作

来看看怎么让浏览器自己动起来:

from selenium import webdriver
from selenium.webdriver.common.by import By
# 启动浏览器
browser = webdriver.Chrome()
# 打开网页
browser.get('https://www.python.org')
# 找到搜索框
search_box = browser.find_element(By.NAME, 'q')
# 输入内容
search_box.send_keys('python')
# 点击搜索按钮
search_box.submit()

这段代码就能自动打开Python官网,在搜索框输入“python”,然后点击搜索。是不是很神奇?

图片

3. 定位元素有绝招

网页上的元素多着呢,咋找到我们想要的那个?Selenium给我们准备了好几种定位方式:

# ID定位
element = browser.find_element(By.ID, 'id名')
# 类名定位
element = browser.find_element(By.CLASS_NAME, '类名')
# XPath定位
element = browser.find_element(By.XPATH, '//div[@class=“某个类名”]')

温馨提示:要是找不到元素,程序会报NoSuchElementException错误。建议加个try-except,程序能继续跑。

4. 等待也是门学问

网页加载需要时间,要是等不及就去找元素,肯定找不着。Selenium提供了两种等待方式:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# 显式等待
element = WebDriverWait(browser, 10).until(
    EC.presence_of_element_located((By.ID, '某个ID'))
)
# 隐式等待
browser.implicitly_wait(10)

显式等待就像守株待兔,等到元素出现才继续。隐式等待是全局设置,找不到元素就等着。

图片

5. 玩转网页交互

光找到元素不够,还得跟它互动:

# 点击
element.click()
# 输入文字
element.send_keys('要输入的内容')
# 清空输入
element.clear()
# 获取文本
text = element.text

要是遇到弹窗,也不用慌:

# 切换到弹窗
alert = browser.switch_to.alert
# 点确定
alert.accept()
# 点取消
alert.dismiss()

页面上还有啥iframe、新窗口神马的,都能搞定。不过这些操作用多了就会发现,网页交互最大的敌人就是各种等待和超时,调试起来特别烦人。

做自动化测试,重要的是要有耐心,遇到问题别急着换方案,先想想是不是时机还不对。代码写得再好,也架不住网络卡顿和页面加载慢,该等的时候还是得等。

推荐把常用的操作封装成函数,代码更清晰,复用起来也方便。比如等待元素出现这种操作,写个函数包起来,下次直接调用。

搞定这些基础操作,差不多就能开始写一些简单的自动化测试脚本了。要是想再深入点,可以研究下PageObject模式,把页面操作都封装起来,代码结构会更清晰。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

在这里插入图片描述
在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值