接口自动化测试服务器部署教程指南

为什么要单独部署接口自动化测试服务器

接口自动化测试脚本如果一直跑在你自己的电脑上,不仅关机就停,而且别人用它也没法运行。
把测试任务放到一台独立的服务器上,你可以设置定时任务每天跑一遍,还能通过 Jenkins 之类的工具触发。
本文就围绕“接口自动化测试服务器部署”这个需求,教你从零开始,在 Linux 服务器上搭建环境、编写脚本、设定自动执行并验证结果。

第一步:准备好一台 Linux 服务器

你需要一台能联网的 Linux 服务器。
如果你是新手,建议直接用 CentOS 7 或 Ubuntu 20.04 的云服务器(腾讯云、阿里云都行)。
最低配置 1 核 2 GB 就够了。

  • 用 SSH 登录服务器(Windows 可以使用 Xshell 或 Putty,Mac/Linux 直接在终端输入命令)。
  • 登录后先更新系统包:
# CentOS 系统
sudo yum update -y

# Ubuntu 系统
sudo apt update && sudo apt upgrade -y

更新完成后,服务器基础环境就准备好了。

第二步:安装 Python 3 和 pip

大多数 Linux 发行版自带 Python,但版本可能比较老。
接口自动化测试通常需要 Python 3.6+,建议安装 Python 3.9 或更高版本。

检查当前 Python 版本:

python3 --version

如果版本低于 3.6,或者干脆没有 Python3,可以用以下方式安装:

CentOS 7 安装 Python 3.9

# 安装 EPEL 和 IUS 软件源
sudo yum install -y epel-release
sudo yum install -y https://repo.ius.io/ius-release-el7.rpm

# 安装 Python 3.9
sudo yum install -y python39 python39-pip

# 设置软链接(方便直接用 python3 调用)
sudo alternatives --set python3 /usr/bin/python3.9

Ubuntu 20.04 安装 Python 3.9

sudo apt install -y software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa -y
sudo apt update
sudo apt install -y python3.9 python3.9-pip

# 设置默认 python3 指向 3.9
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1

安装完成后,验证一下:

python3 --version
pip3 --version

第三步:搭建接口测试运行环境

创建项目目录,并安装核心依赖:

mkdir -p /home/auto-test
cd /home/auto-test

创建虚拟环境(避免污染系统全局):

python3 -m venv venv
source venv/bin/activate   # 激活虚拟环境

安装 requests 和 pytest:

pip install requests pytest

如果你需要测试报告或更多功能,可以再加:

pip install pytest-html allure-pytest

现在写一个简单的测试脚本,比如测试某个公开 API:

# test_api.py
import requests

def test_get_users():
    url = "https://jsonplaceholder.typicode.com/users"
    resp = requests.get(url)
    assert resp.status_code == 200
    assert len(resp.json()) > 0

保存到 /home/auto-test/test_api.py
然后运行测试:

pytest test_api.py -v

如果看到绿色的 PASSED,说明环境搭建成功。

第四步:设置定时自动运行任务

接口自动化测试通常希望每天定时跑一次,这里用 Linux 自带的 crontab 实现。

编辑定时任务:

crontab -e

如果你是第一次使用,会提示选择编辑器(选 nano 或 vim 都行)。
添加一行:

0 8 * * * cd /home/auto-test && /home/auto-test/venv/bin/python -m pytest test_api.py -v >> /home/auto-test/log.txt 2>&1

这行表示每天早上 8 点执行测试,并把输出(包括错误)追加到 log.txt
你可以根据自己的需要调整运行时间。

保存退出后,可以用 crontab -l 查看任务列表。

避坑指南与高频问题

1. 权限不够导致依赖安装失败

如果在 pip install 时遇到权限错误,不要用 sudo pip,那会弄乱系统环境。
请确保在虚拟环境中操作,或者使用 --user 参数(不推荐)。

2. Python 版本冲突

有些服务器同时存在 python2 和 python3,你可能需要用 python3 而不是 python
建议始终使用 python3pip3,或者激活虚拟环境后直接用 python

3. 测试脚本无法执行

检查脚本是否可执行?
不是必需的,pytest 可以直接读取 .py 文件。
但记得文件内容没有语法错误。

4. crontab 环境变量问题

cron 执行时的环境变量很少,有时找不到 pytest 命令。
所以上面我们写了完整路径 /home/auto-test/venv/bin/python -m pytest,这能避免找不到解释器的坑。

5. 查看日志排查问题

定时任务执行后,去查看日志文件:

cat /home/auto-test/log.txt

如果日志为空或者报错,可以手动运行 crontab 中的命令来调试。

验证部署是否成功

你在服务器上手动执行完 pytest 并看到绿点后,已经验证了环境正确。
再检查一下 crontab 任务:

crontab -l   # 确认有定时任务

然后你可以等第二天早上 8 点,或者直接临时修改 crontab 时间(比如改为下一分钟)测试一次。
执行后查看 log.txt 是否出现测试结果。

如果看到类似 “1 passed” 的信息,恭喜你,接口自动化测试服务器部署成功了!

总结

本文带你从选服务器、安装 Python、搭建依赖、编写脚本到设置定时任务,完整走了一遍“接口自动化测试服务器部署”的流程。
你不需要一开始就搞 Jenkins,先用 crontab 把自动化跑起来,再慢慢进阶。
如果你在操作中遇到上面没提到的问题,欢迎留言交流。

分享到:
上一篇
流量调度配置分担服务器压力教程
下一篇
零基础用JMeter压力测试网站服务器性能,全步骤拆解
1
系统公告

高考专属福利来袭|凭准考证免费领香港 CN2 云服务器

值高考落幕之际,泽御云开启考生专属回馈 + 产品限时特惠双重活动,助力学子暑期学习建站 高考 考生专属福利 全体应届高考生,凭高考准考证即可免费申领【香港 CN2 轻量云服务器,4 核 4G AMD 处理器】,免费使用周期 30 天,可用于搭建个人站点、编程实操、技术实训,祝各位考生金榜题名,前程似锦! 泽御云资质齐全合规自营机房,线路覆盖香港 CN2、国内 BGP、内蒙电信、美国精品线路,售后全天候技术支持。 官方网站:www.zeyuyun.com,活动限时有效,优惠逾期不再保留。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意