测试之路python-flask框架:初识flask
2023-02-18 16:23:13 时间
哈喽,大家好,小王又来献丑了,本期聊聊我对flask框架浅显的理解,为后续flask合集做个铺垫。?
1. 开篇
上期内容聊到测试工程师要了解一种开发框架,本期就针对这个话题,说说python的web框架-flask。
说flask之前,就先聊聊flask的开发模式---MTV开发模式:
- M:model。数据模型层。直接指向数据库,对数据库进行相对应的增删改查,并将查询的结果传给view层。
- T:template。模板层。主要用于与用户交互,发送数据给view层,美化处理view层返回的数据并进行展示。也就是我们所了解的前端页面。
- V:view。视图函数层。用于渲染模板层,以及接收模板层的数据。并将数据通过逻辑处理,传给model层。再将model返回的结果,渲染到template层。
flask框架较django来说,更轻量化。更适合用来开发一些测试脚本,测试工具。这两个框架就好比炒菜(不装了,我摊牌了!我是个大厨),django是将所有的配菜买好,配好。只需要开发者下锅就行。而flask则需要从买菜、洗菜开始一点点准备。
2. MTV模式
- 用户使用浏览器发起请求时,浏览器将请求信息通过WSGI发送给flask的view层。view接到这个请求后,先进行模板渲染。给用户返回一个渲染后的前端页面(template层)。
- 此时template层就等待用户输入数据。在用户完成数据输入后,将这些数据再次通过请求的形式,传给view层(以上这两步都会需要到路由定位。这个概念后续细说。)
- view层接到数据以后,会将这些数据进行处理,并根据实际业务需求,将这些数据入库或者进行计算再次返回给template层进行数据展示。
- 至此,大致的数据交互就走完了。附上一张图更能清晰表明这个流程。
3. 日常应用
开篇内容提到,用flask可以简单的写写测试工具,帮助我们在日常工作中,提升一些工作效率。
下图是我最近编写的一个脚本。主要实现功能生成一些测试数据,二是对数据库、redis进行修改、清空等操作。提升我们在测试过程中,数据准备的效率。
4. 总结
上期内容中我们也聊到如何提升自身价值,在我看来,能将所学东西投入到实际工作中,也提升自己工作效率。这也是最能体现价值的地方。也可以通过这么一套工具。了解开发模式,对于我们日常工作查找bug,定位bug也有一定的帮助。
在枯燥乏味的点点点中,写写代码,开发开发工具,也是给自己添加乐趣的一种方式。
本期到这就结束了,下期会展开flask框架做些详细的内容分享。将这套工具的构思、编写、部署、落地、踩坑的每一个步骤都会做详细分享。
各位大佬,我们下期见。拜拜~
相关文章
- 如何在windows下成功的编译和安装python组件hyperscan
- 教你一个快速视频处理的神器:Python moviepy
- 在Spark Scala/Java应用中调用Python脚本,会么?
- 教你如何在Spark Scala/Java应用中调用Python脚本
- 教你Python字符串的基本操作:拆分和连接
- 使用 Python Poetry 进行依赖管理
- 万字教你如何用 Python 实现线性规划
- 使用 scipy.fft 进行Fourier Transform:Python 信号处理
- Python enumerate():使用计数器简化循环
- Python 可以满足你任何 API 使用需求
- 填坑总结:python内存泄漏排查小技巧
- Python 中的反转字符串:reversed()、切片等
- 教你如何在Spark Scala/Java应用中调用Python脚本
- 【Python模块和包】模块含义、模块好处、模块分类、包和模块的创建
- Python 爬虫进阶必备 | 某网络广播电视台 header 加密参数逻辑分析
- Python 爬虫进阶必备 | 某应用榜单加密参数 analysis 加密逻辑分析
- Python 爬虫进阶必备 | 某 d 榜单数据请求参数 k 加密逻辑分析
- Python 爬虫进阶必备 | 某策网数据返回值 data 解密逻辑分析
- Python 爬虫进阶必备 | 某新闻网正文图片 data-src 解密逻辑分析
- 从零到熟悉,带你掌握Python len() 函数的使用