返回

从零开始搭建接口自动化平台(二)- 从个人信息接口着手

开发工具

前言

本篇文章是接口自动化平台系列文章的第二篇,本篇将着手实现个人信息展示接口,重点介绍数据库的设计、ORM框架的使用、接口的编写以及测试用例的撰写。

1. 数据库设计

个人信息接口需要获取用户信息,因此我们需要设计一个表来存储用户信息。表结构如下:

字段 类型 主键 允许空 默认值
id int 自增 用户ID
username varchar(255) 用户名
password varchar(255) 密码
email varchar(255) 邮箱
phone varchar(255) 手机号
address varchar(255) 地址

2. ORM框架的使用

我们使用 SQLAlchemy 作为 ORM 框架,来操作数据库。

3. 接口编写

个人信息展示接口的实现如下:

from flask import Flask, request, jsonify
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.db'
db = SQLAlchemy(app)

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(255), nullable=False)
    password = db.Column(db.String(255), nullable=False)
    email = db.Column(db.String(255), nullable=False)
    phone = db.Column(db.String(255), nullable=False)
    address = db.Column(db.String(255), nullable=True)

@app.route('/api/user', methods=['GET'])
def get_user():
    user = User.query.filter_by(id=request.args.get('id')).first()
    if user is None:
        return jsonify({'error': 'User not found'}), 404
    return jsonify({'user': user.to_dict()})

4. 测试用例撰写

个人信息展示接口的测试用例如下:

import unittest
import requests

class UserAPITestCase(unittest.TestCase):

    def test_get_user(self):
        response = requests.get('http://localhost:5000/api/user?id=1')
        self.assertEqual(response.status_code, 200)
        self.assertEqual(response.json()['user']['username'], 'admin')

5. 总结

通过本篇教程,我们完成了个人信息展示接口的实现,包括数据库设计、ORM框架的使用、接口的编写以及测试用例的撰写。这些知识点都是接口自动化平台的基础,为后续的开发奠定了坚实的基础。

附录