前言: Hello 大家好!我是励志死磕计算机博主~ 很多测试/开发新手想入门UI自动化,但都卡在了"环境搭建"这第一步,要么是驱动版本不匹配,要么是环境变量配置出错,导致刚入门就劝退。这篇文章我会从0开始,用最详细的步骤带你完成Python+Selenium环境搭建,还会手把手教你写第一个自动化脚本(百度搜索),全程避坑,新手也能轻松上手!
本文核心目标:
-
掌握Python+Selenium全平台环境搭建(Windows/macOS/Linux通用)
-
学会用webdriver-manager自动管理浏览器驱动(彻底告别手动下载)
-
写出第一个可运行的UI自动化脚本(百度搜索实战)
-
解决环境搭建与脚本运行中的高频问题
一、UI自动化入门扫盲(新手必看)
1. 什么是UI自动化?
UI自动化就是通过代码模拟人工操作浏览器/APP的过程,比如点击按钮、输入文本、提交表单等。它适合用于回归测试 (重复执行的测试用例)、高频重复流程(如登录、数据录入),能大幅节省人工时间。
但要注意:频繁变更的页面(比如刚上线的新功能页)、复杂的交互场景(如验证码识别、手势滑动)不适合用UI自动化,优先手动测试。
2. 为什么选Python+Selenium?
新手入门UI自动化,Python+Selenium是最优选择,原因有3个:
-
企业使用率高:市面上80%以上的UI自动化项目都用这个组合,就业需求大
-
生态成熟:资料多、问题解决方案全,遇到问题能快速找到答案
-
学习成本低:Python语法简单易懂,Selenium API直观,新手容易上手
3. 新手必避的3个误区
① 盲目追求"全自动化":不要想着把所有测试场景都自动化,先从核心的、重复的场景入手;② 跳过基础直接学框架:基础的环境搭建、元素定位都没掌握,直接学PO模式、Pytest会越学越懵;③ 忽视环境配置细节:驱动版本、环境变量这些小问题,是新手最容易踩的坑,一定要仔细看步骤。
二、全平台环境搭建(Windows/macOS/Linux通用)
环境搭建核心步骤:安装Python → 安装Selenium → 配置浏览器驱动 → 安装IDE(PyCharm)。下面分步骤详细讲解,每一步都附截图指引(以Windows为例,macOS/Linux差异处会特别标注)。
1. 安装Python(3.8-3.10版本)
Python版本建议选3.8-3.10,这个区间的版本兼容性最好,不会出现与Selenium不兼容的问题。
-
下载Python安装包:访问Python官网(https://www.python.org/downloads/),下拉找到3.8-3.10之间的版本(比如3.9.10),点击下载对应系统的安装包(Windows选Windows Installer 64-bit)。
-
运行安装包:
-
Windows:勾选"Add Python 3.9 to PATH"(关键步骤!自动配置环境变量),然后点击"Install Now"。
-
macOS/Linux:双击.dmg文件,按照指引完成安装;Linux可通过命令行安装:
sudo apt-get install python3.9。
-
-
验证是否安装成功:如果输出"Python 3.9.10"类似的版本信息,说明安装成功!
-
Windows:打开cmd命令行,输入
python --version(如果提示"python不是内部命令",说明没勾选PATH,需要手动配置环境变量,后面会讲)。 -
macOS/Linux:打开终端,输入
python3 --version。
-
2. 安装Selenium(指定稳定版本)
Selenium建议安装3.141.0版本(稳定且兼容性好),通过pip命令直接安装。
-
打开cmd/终端,输入以下命令:
pip install selenium==3.141.0 -
验证是否安装成功:输入
pip show selenium,如果输出Selenium的版本、路径等信息,说明安装成功。
如果出现"pip不是内部命令":原因是Python的Scripts目录没加入环境变量,解决方案:找到Python安装目录下的Scripts文件夹(比如C:\Python39\Scripts),把这个路径添加到系统环境变量的Path中,然后重启cmd即可。
3. 浏览器驱动自动管理(webdriver-manager)
这是新手最容易踩坑的地方!传统方式需要手动下载浏览器驱动,还要保证驱动版本和浏览器版本匹配,非常麻烦。这里我们用webdriver-manager库,自动下载并管理驱动,彻底告别手动操作!
-
安装webdriver-manager:打开cmd/终端,输入命令:
pip install webdriver-manager -
验证是否安装成功:输入
pip show webdriver-manager,输出版本信息即成功。
这里说明一下:webdriver-manager支持Chrome、Firefox、Edge等主流浏览器,我们以Chrome为例讲解,其他浏览器用法类似。
4. 安装IDE:PyCharm社区版(免费)
写代码需要一个好用的IDE,PyCharm社区版是免费的,功能足够新手使用。
-
下载PyCharm:访问官网(https://www.jetbrains.com/pycharm/download/),选择Community Edition(社区版),下载对应系统的安装包。
-
安装PyCharm:按照指引下一步即可,Windows建议勾选"Create Desktop Shortcut"(创建桌面快捷方式)。
-
基础配置:打开PyCharm后,选择"New Project",设置项目保存路径,Python解释器选择我们刚才安装的Python版本(自动识别,直接下一步)。
三、第一个UI自动化脚本:百度搜索实战
环境搭建完成后,我们来写第一个自动化脚本:启动Chrome浏览器→访问百度首页→输入"UI自动化"→点击搜索按钮→打印搜索结果页标题→关闭浏览器。全程逐行注释,新手也能看懂!
1. 编写脚本步骤
-
打开PyCharm,在新建的项目中,右键点击项目名称→New→Python File,文件名输入"first_ui_script"(不用加.py,自动生成)。
-
复制以下代码到文件中(逐行注释已写清楚):
#!/usr/bin/env python3
-- coding: utf-8 --
第一个UI自动化脚本:百度搜索
1. 导入需要的库
from selenium import webdriver
从webdriver-manager导入Chrome驱动管理类
from webdriver_manager.chrome import ChromeDriverManager
导入时间库,用于等待页面加载(后续会讲更优雅的等待方式)
import time
2. 初始化Chrome驱动(webdriver-manager自动下载匹配的驱动)
driver = webdriver.Chrome(ChromeDriverManager().install())
3. 访问百度首页
driver.get("https://www.baidu.com")
等待2秒,让页面完全加载(临时调试用,后续会替换为显式等待)
time.sleep(2)
4. 定位百度搜索框,输入"UI自动化"
通过ID定位搜索框(百度搜索框的ID是"kw",后续会讲如何查看元素属性)
search_input = driver.find_element_by_id("kw")
输入文本
search_input.send_keys("UI自动化")
time.sleep(1) # 等待1秒,模拟人工输入后的停顿5. 定位搜索按钮,点击搜索
通过ID定位搜索按钮(搜索按钮的ID是"su")
search_button = driver.find_element_by_id("su")
点击按钮
search_button.click()
time.sleep(3) # 等待3秒,让搜索结果页加载完成6. 打印搜索结果页的标题,验证是否搜索成功
print("搜索结果页标题:", driver.title)
7. 关闭浏览器
driver.quit()
2. 运行脚本的两种方式
方式1:在PyCharm中直接运行
点击代码编辑区右上角的绿色三角按钮(或右键→Run 'first_ui_script'),即可运行脚本。运行成功后,会自动启动Chrome浏览器,执行百度搜索操作,最后在PyCharm的控制台输出搜索结果页标题。
方式2:在命令行中运行
-
打开cmd/终端,切换到脚本所在的目录(比如脚本保存在"D:\UI_Automation\first_project",则输入
cd D:\UI_Automation\first_project)。 -
输入命令:
python first_ui_script.py,即可运行脚本。
四、高频问题排查(新手必看)
运行脚本时遇到问题不要慌,以下是最常见的3个问题及解决方案:
1. 浏览器闪退,没有执行后续操作
原因:webdriver-manager版本与Chrome版本不兼容。
解决方案:
-
更新webdriver-manager:输入命令
pip install --upgrade webdriver-manager。 -
如果更新后仍有问题,查看Chrome浏览器版本(点击Chrome右上角三个点→帮助→关于Google Chrome),然后手动下载对应版本的驱动,放到Python的Scripts目录下(不推荐,优先用第一种方案)。
2. 提示"no such element: Unable to locate element: {"method":"id","selector":"kw"}"
原因:页面还没加载完成,代码就开始定位元素了。
解决方案:延长time.sleep()的等待时间,比如把time.sleep(2)改成time.sleep(5)。后续我们会学习更优雅的"显式等待",避免使用固定的等待时间。
3. 提示"python不是内部或外部命令"
原因:Python的安装目录没加入系统环境变量。
解决方案(Windows):
-
找到Python的安装目录(比如C:\Python39)。
-
右键点击"此电脑"→属性→高级系统设置→环境变量→在"系统变量"中找到"Path"→编辑→新建,把Python的安装目录和Scripts目录(C:\Python39\Scripts)添加进去。
-
重启cmd,重新运行命令即可。
五、实战练习(巩固知识点)
看完教程后,一定要自己动手练习!请修改上面的脚本,实现"淘宝搜索商品"功能,需求如下:
-
启动Chrome浏览器,访问淘宝首页(https://www.taobao.com)。
-
定位淘宝搜索框,输入"Python编程书籍"。
-
点击搜索按钮,等待搜索结果页加载。
-
打印搜索结果页标题,关闭浏览器。
提示:淘宝搜索框的ID是"q",搜索按钮的ID是"btn-search"。如果遇到淘宝的登录弹窗,可以先手动登录一次,再运行脚本(后续会讲解如何自动处理弹窗)。
六、总结与下一篇预告
本篇文章我们完成了UI自动化的入门第一步:环境搭建+第一个脚本实战。核心知识点:
-
Python+Selenium环境搭建的关键步骤(尤其是webdriver-manager的使用)。
-
第一个自动化脚本的编写思路(驱动初始化→访问页面→元素定位→操作→验证→关闭浏览器)。
-
常见问题的排查方法。
下一篇文章我们会讲解UI自动化的核心------元素定位,包括8种定位方式的详细用法、Chrome开发者工具的使用、定位工具推荐等,帮你彻底掌握"找到元素"这个关键技能!
如果这篇文章对你有帮助,别忘了点赞+收藏+关注,后续会持续更新UI自动化系列教程~ 有任何问题欢迎在评论区留言!