分享一个接口自动化测试实战练习的简易项目(附完整使用教程)

0 阅读3分钟

最近我在Raina的AI&测试学习圈里准备分享基于Skill的接口自动化测试方案,考虑到有些小伙伴在学习接口自动化测试的时候都会遇到一个问题:手头没有一个足够简单、又相对完整的后端项目可以拿来练习。真正的业务系统往往依赖数据库、中间件、复杂的权限体系,一旦搭环境就要花掉大量时间和精力,反而很难专注在接口本身和测试思路上。

为了解决这个痛点,我这边开发了一个 简单的 python 后端项目。它围绕「用户登录 + 用户增删改查」这一典型业务场景,提供了一组非常适合做练习的 HTTP 接口,代码量小、结构清晰,不需要额外安装数据库,就可以直接本地跑起来。

下面讲解如何去拉取项目并启动服务:

项目介绍

提供的接口

demo_project 专注在「用户认证和用户管理」这一个小而完整的领域,围绕它提供了下面几类典型接口:

image.png 可以简单理解,项目就提供了登录、查看当前用户信息,以及用户的增删改查接口~

使用的语言与技术栈

demo_project 使用的是 Python + Flask 技术栈,代码入口集中在 demo_project/app.py 中。整个应用只依赖了非常少量的第三方包,主要就是 Flask 本身和 Python 标准库(如 osuuid 等),没有引入 ORM、任务队列、缓存中间件等复杂组件。

无 MySQL,启动简单

很多真实项目都会依赖 MySQL、Redis 等服务,对刚上手练习的同学来说,这会引入相当多的环境问题。demo_project 特意做了一个取舍:完全使用内存字典来存储用户数据,不依赖任何外部数据库或中间件。这样子,启动后端服务,就会比较容易了

如何启动项目?

环境准备

  • • python环境安装
  • • git安装

项目拉取

使用命令行,进入到存放该项目的文件夹路径,执行以下命令:

 git clone+项目地址 

(项目git地址获取方式见文末)

安装依赖

# 进入项目
cd demo_project 
# 安装依赖 如果是python3,则使用pip3
pip3 install -r requirements.txt

image.png

启动服务

demo_project 的应用入口在 demo_project/app.py
启动命令如下:

# python版本
python app.py
# python3版本
python3 app.py

执行成功后效果如下:

image.png

如果想看项目代码的话,可以随便找个代码编辑器打开这个项目(如下):

image.png

验证接口是否正常

服务启动后,我们怎么判断服务的接口是否正常呢?

我们可以使用postman、apipost或者curl指令进行接口调用,这里我们就以apipost作为示例

image.png

{{base_url}} 替换成: http://localhost:11011

如下面的登录接口就能调通了。

image.png

建议大家先熟悉一下这几个接口,把他们都跑通来,该串联的串联,该设置全局配置的就设置,把接口熟悉了,后面跑自动化会更清晰一些。

git项目地址获取方式:在【Raina测试】公众号后台回复:项目地址