基于flask的web测试平台的开发流程

本文介绍了一个基于Flask的web测试平台的开发流程,包括项目架构、开发框架选择(选用Flask、SQLAlchemy和Bootstrap)、数据库配置、路由和视图的实现、前端页面设计以及数据传递。平台使用Python的Flask框架,数据库采用SQLAlchemy,前端使用Bootstrap,详细阐述了数据库表创建、路由定义、模板渲染和前后台数据交互等关键环节。
摘要由CSDN通过智能技术生成


目录

一、简介 3

二、 项目架构 3

2.1、业务结构 3

2.2、平台架构 4

三、开发框架选择 4

3.1Web开发框架 4

3.2、数据库ORM 5

3.3、前端 5

四、项目结构 5

4.1 项目结构目录树 5

4.2 项目结构目录解析 6

五、数据库 6

5.1SQLAlchemy数据库配置 6

5.2、建立数据库表 8

5.3、数据库操作 8

六、 路由和视图 9

6.1、定义方法 9

6.2、变量规则 10

6.3HTTP 方法 11

6.4、模板渲染 11

七、 前端页面 11

7.1HTML基本结构 11

7.2、表单结构 12

7.3Jinja2模板渲染语法 13

7.3.1、变量 14

7.3.2、控制结构 14

7.3.3、模板继承 15

八、 前后台数据传递 16

8.1、注册/登录 17

8.2、权限控制 18

8.3、列表页数据获取 20

、用例加载执行 21

9.1、单元执行 21

9.2、批量执行 22

 

 

 

 

 

 

 

 

 

 

一、简介

该平台是一款基于CS模式的web服务平台,用于对测试用例的统一管理,集用例添加、编辑、删除、运行于一身,用例运行的核心机制采用的是httprunner

二、项目架构

2.1、业务结构

 

2.2、平台架构

 

三、开发框架选择

3.1Web开发框架

平台用例核心运行机制采用的是httprunner,而httprunner采用的Python语言,所以平台也顺势选用Python作为开发语言,Python web开发有两个主流框架DjangoFlask

l Django是一款重量级的Python开发web框架,功能齐全,不同的人用Django来开发,开发出来的东西基本架构都是一样的,

l Flask是一个轻量级的web框架,相对来说更加灵活,每个人开发出来的东西架构可能完全不一样。

对于团队级别的大型项目来说,比较适合选择Django,因为整个团队比较容易达成一致的架构,不会陷入无休止的会议讨论,里面很多东西不需要自己设计,拿来即用,快速开发。

对于个人开发的小项目来说,也可以用Django,也可以用Flask,用Flask的话,可以设计自己的项目架构,不必拘泥于Django的固定模式。对于以后进行功能扩展也比较容易开展。

l Flask对于加深Python学习有很大帮助,因为Flask不像Django很多东西都是现成的,需要自己去写

因此,基于以上的对比,选择Flask作为项目的开发框架。

3.2、数据库ORM

采用SQLAlchemySQLAlchemyPython编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象转换成SQL,然后使用数据API执行SQL并获取执行结果。选择SQLAlchemy一个原因是因为它是基于Python的开源框架,再就是使用比较广泛,教程多,遇到问题容易找到解决方法。

3.3、前端

前端基本都是固定的HTML5,CSS,JavaScript,为了方便快速开发,选用一款前端框架bootstrap,脚本引入jQuery库。由于采用flask框架,因此模板渲染自然而然就是采用的jinja2.

四、项目结构

4.1 项目结构目录树

E:.

│  .gitignore

│  config.py

│  manager.py

│  run.py

├─app

│  │  models.py

│  │  views.py

│  │  __init__.py

│  ├─static

│  │  ├─bootstrap

│  │  │  ├─css

│  │  │  │      bootstrap-theme.css

│  │  │  ├─fonts

│  │  │  │      glyphicons-halflings-regular.eot

│  │  │  └─js

│  │  │          bootstrap.js

│  │  └─image

│  │          bg.jpg

│  ├─templates

│  │      add_config.html

│  └─__pycache__

│          models.cpython-36.pyc

│          __init__.cpython-36.pyc

├─hrunner

│  │

│  ├─ssj_api

│  ├─ssj_share

│  ├─ssj_sync

│  ├─token

│  └─user_api

├─httprunner

├─tests

└─test

4.2 项目结构目录解析

l .gitignore文件是放在项目的根目录,用来存放需要忽略的git提交文件

l config.py用来存放项目的一些配置信息

l manager.py用来存放一些通用的函数,数据库操作类

l app文件夹为项目的主应用

l models.py中用来存放数据库模型,所有的数据库表都在这里建立

l views.py中用来存放路由函数,所有的请求接口功能都是在这里定义的

l __init__.py中主要初始化一个应用的,里面除了import语句,只有一行代码app=Flask(__name__)

l static文件夹中用来存放一些网站的静态文件,如bootstrap框架的cssjs模板,一些image背景图片,图标之类的

l templates文件夹中用来存放网站每个html页面

l test中是测试代码

五、数据库

每个网站都有大量数据,需要数据库支撑,本项目采用MySQL数据库,在项目开始前首先要建立一个项目对应的数据库SsjApiPlat,并且需要提前安装Python第三方库Flask-SQLAlchemy

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值