接口测试平台代码实现54:首页重构-2

简介: 好,虽然绝大多数同学还未追上最新进度进行投票,但是已投情况来看,大部分还是支持首页做成接口快速调试功能。那么本节课就开始吧,首先我们打开我们的首页:home.html。观察一下目前结构:

微信图片_20220623190948.png

我们这次改版相当于完全重构了,所以删除掉body 的css属性和一切子内容微信图片_20220623190955.png

现在主页已经是一片空白了。我们要重新设计了。

首先我们依从postman的风格,整个首页大概分为左右俩部分,左边是请求历史记录,右边是接口调试的具体模版。当我们点击左侧的任意请求记录的时候,右侧则迅速把各个输入框的值变为这次记录存储的数据即可。当然每次请求无论是否成功,左侧的请求记录都会储存好本次请求的请求数据。

另一个功能是当我们右侧的调试功能启动,获取了接口的返回值后,使用者可以看到自己已有的项目列表和新建项目功能,点击即可把本次请求保存到对应项目中。

 

那么我们可以用div来做一条完全可控的竖线,来分割开左右。

微信图片_20220623191000.png

这个div内部必须有个空格  否则是没有高度的,注意空格用 表示,后面必须写分号。

微信图片_20220623191006.png

可以看到这个竖线并不高,那是因我没有设置高度,当然为了设置成一个动态高度,我们只能在写一个js来自动控制高度,高度受浏览器高度决定。

微信图片_20220623191011.png

我们用h来表示浏览器的高度,然后把这个竖线shu 的高度设置成h-85的样子。

看看效果:

微信图片_20220623191018.png

当然颜色的话,我们改成深灰色显眼一点:

微信图片_20220623191101.png


好,我们目前左侧应该是一个div,div下面应该是当前登陆用户的请求记录的列表,每行其实就是一个超链接。代码如下:

微信图片_20220623191119.png

我们创建了这个循环左侧div,注意代码位置必须在这个竖线上面。这个div的高度我们也要用最下面那段js来控制住,并且要设置竖滚动条-overfloow-y:scrooll微信图片_20220623191126.png

注意,当前我这个高度设置并不一定是最好的,所以之后真的有数据显示后,我们再调试这个动态高度。,然后这个div内部应该就是一个循环,循环主体是超链接。具体数据由用户进入首页时 由后端带进来。

微信图片_20220623191227.png

如上图代码所示:这个超链接,点击的话我们定义了一个js函数,用来把请求数据显示到右侧。并且a标签的text文本我们简单显示为这个请求的请求方式和url

不过目前并没有数据,所以暂时告一段落。

 

接下来我们继续完善这个左面部分,考虑到需要存储用户的请求记录,所以少不了要做一个新的数据库表了。这个表存放的基本和接口仓库的接口表一样,但是不需要项目id,因为首页调试的接口不属于任何项目,但是额外需要用户id,因为这些接口属于用户,我们也是靠用户id 来区分开。而诸如上次请求体/格式,名字描述,项目纬度全局公共变量等字段均不要了。具体class代码我们复制接口的然后稍加改动即可:

微信图片_20220623191232.png

class DB_apis_log(models.Model):
    user_id = models.CharField(max_length=10,null=True) #所属用户id
    api_method =  models.CharField(max_length=10,null=True) #请求方式
    api_url =  models.CharField(max_length=1000,null=True) #url
    api_header =  models.CharField(max_length=1000,null=True) #请求头
    api_login =  models.CharField(max_length=10,null=True) #是否带登陆态
    api_host =  models.CharField(max_length=100,null=True) #域名
    body_method =  models.CharField(max_length=20,null=True) #请求体编码格式
    api_body =  models.CharField(max_length=1000,null=True) #请求体
    sign =  models.CharField(max_length=10,null=True) #是否验签
    file_key =  models.CharField(max_length=50,null=True) #文件key
    file_name =  models.CharField(max_length=50,null=True) #文件名
    def __str__(self):
        return self.api_url

 

虽然里面很多我们还没用上,但是作为预留也要写上。


然后运行最常用的俩句命令来同步:

微信图片_20220623191309.png

然后去我们的admin.py中注册:微信图片_20220623191316.png

然后我们重启服务后进入后台,找到这个表:

(有些同学后台打开后,对表进行增删操作后会报错,这种情况是因为你的django和sqlite版本不对应导致。最好pip卸载装好配套的。我这里给大家看下我的各个组件的版本,并不是最新,但确很稳,具体放在了次条文章中)微信图片_20220623191322.png

让我们随便增加俩条请求记录,作为我们后续调试设计前端的demo。

注意userid写自己的哦!查看自己userid方法很多,

微信图片_20220623191333.png

比如进入后台用户表,进入自己的用户记录中,看看url里的这个数字,就是了。

微信图片_20220623191339.png

创建完成后,我们接下来就是负责前端的左侧的请求记录开发了。

本节到此结束,欢迎持续关注~

相关文章
|
1月前
|
数据采集 机器学习/深度学习 大数据
行为检测代码(一):超详细介绍C3D架构训练+测试步骤
这篇文章详细介绍了C3D架构在行为检测领域的应用,包括训练和测试步骤,使用UCF101数据集进行演示。
40 1
行为检测代码(一):超详细介绍C3D架构训练+测试步骤
|
1月前
|
机器学习/深度学习 人工智能 监控
提升软件质量的关键路径:高效测试策略与实践在软件开发的宇宙中,每一行代码都如同星辰般璀璨,而将这些星辰编织成星系的过程,则依赖于严谨而高效的测试策略。本文将引领读者探索软件测试的奥秘,揭示如何通过精心设计的测试方案,不仅提升软件的性能与稳定性,还能加速产品上市的步伐,最终实现质量与效率的双重飞跃。
在软件工程的浩瀚星海中,测试不仅是发现缺陷的放大镜,更是保障软件质量的坚固防线。本文旨在探讨一种高效且创新的软件测试策略框架,它融合了传统方法的精髓与现代技术的突破,旨在为软件开发团队提供一套系统化、可执行性强的测试指引。我们将从测试规划的起点出发,沿着测试设计、执行、反馈再到持续优化的轨迹,逐步展开论述。每一步都强调实用性与前瞻性相结合,确保测试活动能够紧跟软件开发的步伐,及时适应变化,有效应对各种挑战。
|
7天前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
36 3
|
11天前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
47 1
|
1月前
|
测试技术
自动化测试项目学习笔记(五):Pytest结合allure生成测试报告以及重构项目
本文介绍了如何使用Pytest和Allure生成自动化测试报告。通过安装allure-pytest和配置环境,可以生成包含用例描述、步骤、等级等详细信息的美观报告。文章还提供了代码示例和运行指南,以及重构项目时的注意事项。
170 1
自动化测试项目学习笔记(五):Pytest结合allure生成测试报告以及重构项目
|
29天前
|
人工智能 监控 测试技术
云应用开发平台测试
云应用开发平台测试
46 2
|
11天前
|
监控 安全 测试技术
构建高效精准测试平台:设计与实现全攻略
在软件开发过程中,精准测试是确保产品质量的关键环节。一个高效、精准的测试平台能够自动化测试流程,提高测试覆盖率,缩短测试周期。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
33 0
|
1月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
59 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
2月前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
239 7
Jmeter实现WebSocket协议的接口测试方法
|
2月前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
247 3
快速上手|HTTP 接口功能自动化测试