接口测试平台代码实现1:环境和所需技术

简介: 本节主要是要介绍下,做一个这样的测试平台,都需要提取掌握哪些技术呢?还没掌握的可以在看完本节之后,去好好学习一下相关技术。本公众号会用直白的土话给您讲讲,并不是百度百科那种晦涩难懂的定义哈。

1.Django


说到python,大家应该都会的差不多,平时写个小脚本,写个小请求都不在话下。但是如何用python写一个web平台呢?这里我们就需要用到django。django你可以理解为就是一个pip能下载的第三方框架,然后你在它这个框架内去填东西,不出意外的话,一小时以内,你就能搭建一个自己的平台了,虽然只是第一个页面,没啥美感可言。它下载下来之后就是pip的一个包,有个命令,你用python运行这个命令就可以创建一个项目,这个项目下它给你分好文件夹了,每个下面写什么,你就按照要求去写就可以了,很简单。微信图片_20220614201639.png


2.Python


就是一个编程语言,没啥特殊的。大家用py3吧,本平台是py3写的。微信图片_20220614201644.jpg


3.html


就是一个静态语言,啥叫静态,就是它本身没啥能力,就是一堆死文字,但是浏览器能看懂,然后按照这堆静态文本,生成漂亮的网页。那么html中我们需要记住什么呢,全是死记硬背的东西。比如输入框:input , 按钮:button ,  下拉框:select  ,做个盒子把这一堆装起来统一带着移动或者是设置什么,盒子就可以是div , 静态文案有span, 标题这种大文案用h1。图片img,超链接a,

循环显示同一个的循环:{% for i in list %} ... {% endfor %}微信图片_20220614201649.png


4.js/jquery


这就是嵌入到html页面中的另一种语言,是动态的,它和python一样都可以说是脚本语言,写法上不太相同。但是浏览器能看懂它。用来干嘛呢?比如你要设计让用户点击这个按钮就提示xxx,这种动作 就需要靠js了。jquery是在js的基础上进行的又一次封装,使用起来简单一些。

比如button按钮,你想让点击操作弹出提示xxx, 就要给这个按钮 加一个属性:onclick= ... 这个属性就代表有人点击之后会运行什么js函数,然后指向一个js函数。onclick=“ press() ”  

然后你去写个js函数press(),内容就是,弹出提示xxx。这样就可以实现有人点击就弹提示了。微信图片_20220614201658.png


5.css


这个也是前端的知识,主要就是样式 也就是class。

主要就是你要是觉得这个按钮 或者 这个输入框 太丑了。想给它美化一下,就要用到css,比如给它换个长宽,换个颜色等等。

button按钮举例,给它加个属性,style="background-color=red" ,就是让按钮背景颜色变成红色的。所有的各种属性css,都要放在style属性中哦:

style="color=xxx;width=xxx" 中间都用;分号来隔开。微信图片_20220614201713.png


6.requests模块


这个模块是python目前最好用的一个发送tcp/ip 请求的模块,也就是我们想做接口测试平台,那怎么才能发出一个http请求呢,那全都要靠reqeusts模块。

比如发一个post请求:

requests.post(url,headers,date)

这样就发出去了。


7.sql/orm 数据库操作方法


一个平台,那么它肯定需要一个数据库来存放各种配置和数据。那么django自带的sqlite3 数据库就非常好用了。操作方法和sql数据库完全一致,就是个自带轻量级版本而已。

传统我们操作数据库,进行增删改查,都是用sql语句,如:select * from ..

现在在django中。我们可以不用在自己手写各种sql了,和链接断开上传获取这一大堆语句了。也不用担心数据库连接失败,忘记断开,线程池等等一大堆事情。orm方式可以看作django对sql语句的一种封装,我们只需要调用对应的函数即可实现上面一大堆麻烦的“链接数据库,写sql,上传sql,获取查询数据元组,断开数据库”这些操作了。

比如查询:表名.objects.all() 即可获取全部数据,完全不用担心io等报错。

微信图片_20220614201720.png

8.mtv架构


可能大家都听过自己公司的开发的项目都是什么mvc架构,但是django在更人性化,更易理解的角度出发,演化了mtv架构。

m  就是数据层,数据库,这些

t 就是模版层,就是你写的这些html存放的地方

v 就是视图逻辑层 ,就是你写后端函数代码的地方

额外还需要理解一下路由分发控制器,也就是urls.py,这些文件和层级,都会在你用django命令创建一个项目之后自动给你创建好。你只需要在里面填肉即可。这是干嘛的呢,就是让你的html 和你后端代码函数 链接起来的一个文件而已。里面全是对应关系。后续会给大家详细讲解。微信图片_20220614201726.png


9.一定的产品设计思维


如果你不想你做出来的东西 自己都恶心的不想用的话,就好好学习一下产品思维,当然我也在学习中。如何跟用户交互,界面如何设计 等等都需要考虑。微信图片_20220614201733.png

10.一定的架构和算法能力


如果你不想你的整个平台项目都摇摇欲坠,运行个功能卡的要死,各种异常报错,维护和修改起来比开发时候还难。那么就需要学习一些这东西。架构和算法上的优化效果相比其他 那都是次元级别的差距


11.一定的运维和营销能力


多一个人用就相当于帮你测试了,所以用户多多益善,当然这个成就感也很高,但是前提是你会运营而且质量足够吊。

相关文章
|
21天前
|
数据采集 监控 机器人
浅谈网页端IM技术及相关测试方法实践(包括WebSocket性能测试)
最开始转转的客服系统体系如IM、工单以及机器人等都是使用第三方的产品。但第三方产品对于转转的业务,以及客服的效率等都产生了诸多限制,所以我们决定自研替换第三方系统。下面主要分享一下网页端IM技术及相关测试方法,我们先从了解IM系统和WebSocket开始。
37 4
|
1月前
|
前端开发 JavaScript 测试技术
前端测试技术中,如何提高集成测试的效率?
前端测试技术中,如何提高集成测试的效率?
|
8天前
|
监控 JavaScript 测试技术
postman接口测试工具详解
Postman是一个功能强大且易于使用的API测试工具。通过详细的介绍和实际示例,本文展示了Postman在API测试中的各种应用。无论是简单的请求发送,还是复杂的自动化测试和持续集成,Postman都提供了丰富的功能来满足用户的需求。希望本文能帮助您更好地理解和使用Postman,提高API测试的效率和质量。
48 11
|
26天前
|
机器学习/深度学习 人工智能 算法
BALROG:基准测试工具,用于评估 LLMs 和 VLMs 在复杂动态环境中的推理能力
BALROG 是一款用于评估大型语言模型(LLMs)和视觉语言模型(VLMs)在复杂动态环境中推理能力的基准测试工具。它通过一系列挑战性的游戏环境,如 NetHack,测试模型的规划、空间推理和探索能力。BALROG 提供了一个开放且细粒度的评估框架,推动了自主代理研究的进展。
38 3
BALROG:基准测试工具,用于评估 LLMs 和 VLMs 在复杂动态环境中的推理能力
|
26天前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
57 1
|
1月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
38 4
|
1月前
|
人工智能 供应链 安全
AI辅助安全测试案例某电商-供应链平台平台安全漏洞
【11月更文挑战第13天】该案例介绍了一家电商供应链平台如何利用AI技术进行全面的安全测试,包括网络、应用和数据安全层面,发现了多个潜在漏洞,并采取了有效的修复措施,提升了平台的整体安全性。
|
1月前
|
数据采集 前端开发 安全
前端测试技术
前端测试是确保前端应用程序质量和性能的重要环节,涵盖了多种技术和方法
|
1月前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
65 3
|
1月前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
143 1