2. 测试环境搭建:Python环境配置、虚拟环境管理、依赖包安装

说实话,做自动化测试这么多年,我见过太多人栽在环境搭建这一步。明明代码写得没问题,结果一跑就报错——多半是环境没配好。今天我就把这一整套流程掰开揉碎了讲给你听。

2.1 Python环境配置

先说说Python版本的选择。我个人习惯用Python 3.8+,为什么?因为pytest和selenium对3.8以上的支持最稳定。我曾经在Python 3.6上踩过坑,有些新特性不支持,折腾了半天。

Windows用户看这里:

  1. 去官网下载Python安装包(记得勾选"Add Python to PATH")
  2. 打开命令行,输入 python --version 验证
  3. 如果提示"python不是内部命令",说明PATH没配好

macOS/Linux用户:

  1. macOS自带Python 2.x,但我们需要3.x。用Homebrew安装:brew install python3
  2. Linux用户用包管理器:sudo apt install python3 python3-pip
  3. 验证:python3 --version
⚠️ 注意:千万别用系统自带的Python 2.x做自动化测试。我见过有人图省事直接用,结果selenium都不支持了。老老实实装Python 3。

2.2 虚拟环境管理

你想想看,如果每个项目都用全局Python,依赖包版本冲突怎么办?项目A要requests 2.25,项目B要requests 2.26,这不就打架了?

虚拟环境就是解决这个问题的。我推荐用 venv,它是Python 3自带的,不用额外安装。

创建虚拟环境:

# 在项目目录下执行
python -m venv venv

# 激活虚拟环境
# Windows:
venv\Scripts\activate

# macOS/Linux:
source venv/bin/activate

激活后,命令行前面会出现 (venv) 标识。这时候你安装的所有包都只在这个项目里生效。

💡 小技巧:我习惯把虚拟环境命名为 venv,这样在.gitignore里直接写 venv/ 就能忽略掉。别把虚拟环境提交到Git仓库,那玩意儿太大了。

还有个工具叫 virtualenvwrapper,它能让虚拟环境管理更方便。但我个人觉得,对于初学者来说,venv已经够用了。等你有经验了再升级也不迟。

2.3 依赖包安装

好,环境配好了,虚拟环境也激活了。接下来安装我们需要的三个核心包:pytest、selenium、requests。

一键安装:

pip install pytest selenium requests

等个一两分钟,看到"Successfully installed"就说明装好了。你可以用 pip list 查看已安装的包。

为什么要用这三个包?

包名 作用 我在项目中的用法
pytest 测试框架,用来组织和运行测试用例 配合allure生成测试报告,贼好用
selenium 浏览器自动化,模拟用户操作 曾经用它跑过2000个UI用例,稳得很
requests HTTP请求库,用于接口测试 接口自动化必备,比urllib好用一百倍

版本锁定:

为了避免"在我电脑上能跑"的尴尬,我建议把依赖版本固定下来:

pip freeze > requirements.txt

这样生成的 requirements.txt 文件里会记录所有包的精确版本号。别人拿到项目后,直接 pip install -r requirements.txt 就能复现你的环境。

🔴 避坑指南:我曾经在项目里忘了锁版本,结果同事装到了selenium 4.x,而我的代码是基于3.x写的,一堆API报错。从那以后,我每次提交代码前都会更新requirements.txt。

2.4 验证环境是否搭建成功

光说不练假把式。我们来写个简单的测试脚本,验证环境是否正常:

# test_env.py
import pytest
import requests
from selenium import webdriver

def test_requests():
    resp = requests.get("https://httpbin.org/get")
    assert resp.status_code == 200
    print("requests 工作正常")

def test_selenium():
    driver = webdriver.Chrome()
    driver.get("https://www.baidu.com")
    assert "百度" in driver.title
    driver.quit()
    print("selenium 工作正常")

if __name__ == "__main__":
    pytest.main(["-v", "test_env.py"])

运行 python test_env.py,如果两个测试都通过,恭喜你,环境搭建成功了!

💡 提示:运行selenium测试前,记得下载对应浏览器的驱动。Chrome用chromedriver,Firefox用geckodriver。下载后放到PATH路径下,或者直接放在项目根目录。

2.5 知识体系总览

下面这张图帮你理清整个环境搭建的脉络:

测试环境搭建知识体系 Python环境配置 虚拟环境管理 依赖包安装 版本选择 PATH配置 验证安装 venv创建 激活/退出 依赖隔离 pytest selenium requests 最终目标:可复现的自动化测试环境

嗯,到这里环境搭建就讲完了。记住一句话:环境搭得好,测试跑得早。别嫌这一步麻烦,后面写代码的时候你就知道有多省心了。

📌 核心要点回顾:
  • Python 3.8+,记得配PATH
  • 每个项目独立虚拟环境,用venv
  • pip install三件套:pytest、selenium、requests
  • 用requirements.txt锁版本
  • 写个简单脚本验证环境

可可精品资料库