接口测试平台代码实现11: 用户管理模块设计和开发

简介: 上节,我们已经做完了首页,那么针对于一个平台来说,这并不仅仅是一个有界面的工具/脚本,而是实实在在可多人协同使用的平台。那么就必然不可缺少 用户概念。

  如果没有用户概念,那就拿我们接下来要做的东西举例子,小邪😈同学创建了一个项目,里面有她的个 人开发或测试的接口/数据/用例 等等,作为一个精致的女孩,她把自己的项目打理的井井有条,测试数据一丝不苟。然后中午的时候,小资的她去了一个优雅的西式餐厅,优雅的点了一杯卡布奇诺,吃着昂贵的全麦吐司面包,加上一盘小巧健康草莓披萨。然后下午回来,发现她的项目被好几个老糙汉子给用了一遍,接口删的删,改的改,注视和备注乱的一塌糊涂,用例数据几乎全部断线成了脏数据,然后她想起一句台词:吃着火锅唱着歌,然后就遇到土匪了,窟咚一声掉河里,出来我就到这了。

   所以为了更好的区分使用者,防止互相影响,也为了平台更加高大上。我们必须引入用户模块。

   

   但是用户模块这里要说一下,大概有俩种:

  1. 利用django原生的用户系统,简单快捷,性能优秀。
  2. 公司内有cas统一单点登陆,需要你的平台介入cas统一登陆。


第二种cas登陆的话是指 所有内部平台都使用统一的用户数据库。这个数据库由运维管理,注册和注销都由hr控制,只能公司内部员工方可登陆。测试平台只需要使用专用的djaog 的cas库即可,且本地会形成影子用户表,相当于一个二层数据库,来方便你进行其他如冻结,增删用户画像等低级权限设置。


不过我们要学习的是第一种,我们测试平台的独立用户数据库。毕竟用户数据牢牢控制在自己手中才是王道。


   那么我们打算先设计的就是前端页面。先调动起我们自身的兴趣才是正事对不?

   那么好。我们新建一个html文件,叫做login.html,tittle写测试平台登陆微信图片_20220616130127.png

然后去新建url映射:微信图片_20220616130142.png

然后去写一个进入登陆页面的后端函数:login,这个函数返回的可不是welcome.html了,而是实实在在的就一个登陆页面,也不用带什么json数据。微信图片_20220616130147.png

接下来就到了老少爷们最喜欢的设计登陆页面的环节了。


打开login.html,我们给弄个全面的背景图吧?

我们去找一张小邪😈同学看到自己的项目被毁后伤心一个人来到花丛的图片作为背景,放在static目录下,取名为login.jpg微信图片_20220616130151.png

然后我们在login.html中的head标签内增加一个style标签,这个代表全局默认样式:在里面写什么东西,都会在全页面内生效。比如我在里面写给所有button都变成黑色,那么之后在body中的所有按钮,如果你不单独设置颜色,那么就全是黑的。


不过我们这次要写的是body。虽然页面只有一个body,但是我们也要写在这里比较好:微信图片_20220616130158.png

然后给body增加如下图所示的样式。

分别是背景图地址,背景图适应浏览器的设置等。大家找葫芦画瓢就好。微信图片_20220616130400.png

然后让我们进入 127.0.0.1:8000/login/ 来看看效果。微信图片_20220616130405.png

很漂亮吧。

   接下来,让我们添加 用户名 /密码 输入框,登陆按钮,注册按钮这一套。

先搭建一个底层矩形div。白色透明。大家可以看下样式,其中opacity是透明度。自己也可以适当改改。这里不具体说前面章节已经讲过的样式了:微信图片_20220616130411.png

效果:微信图片_20220616130421.png

然后 添加欢迎语 和 用户名 输入框 密码输入框。

其中新技巧:样式块,.wqrf_input。这是我随便起的名字,就是在style内写的全局默认样式,只不过前面要加.点。这样它便不再特制某类元素,而是你随意使用,使用方式就是在元素内加入 class 。值为wqrf_input这里不加.点微信图片_20220616130427.png

看看效果:微信图片_20220616130655.png

可能有点长了这个白底,下面我们要添加 登陆和注册按钮,反馈超链接等,顺便缩短一下这个白底。微信图片_20220616130701.png

然后再适当添加 阴影属性给整个div白底,box-shadow属性。微信图片_20220616130706.png

然后来看看效果,其中注册账号因为使用频率过低,所以做成一个超链接

如果显示的和我不同也没关系,浏览器/系统不同显示出来的都可能不一致。

接下来就是简单的美化美化来,因作者也是一边实际开发,一边写本文,所以不会一开始就完全写好,最后需要优化是必然的,这样也更好的使读者领略真实情况,而不是神剧。

<div style="box-shadow: 4px 4px 6px #2a262a;margin-left: -webkit-calc(50% - 150px);width: 300px;background-color: white; opacity:0.91;border-radius: 10px;text-align: center">
        <strong><span style="font-size: xx-large;color: #031e13">接口测试平台</span></strong>
        <br>
        <span>欢迎使用</span>
        <br><br>
        <div style="padding-left: 10px;text-align: left">
            <span style="font-size: large;color: #656565">用户名:</span> <input type="text" class="wqrf_input">
            <br><br>
            <span style="font-size: large;color: #656565">密码:</span><input type="text" class="wqrf_input">
        </div>
        <br><br>
        <button style="width: 90%;height: 35px;border-radius: 5px;background-color: #068e01;color: white;font-size: large">登 陆</button>
        <br><br>
        若首次登陆,请点击 <a href="">注册账号</a>
        <br><br>
    </div>

以上是修改后的代码:微信图片_20220616130711.png

最后看看效果,就结束了~:微信图片_20220616130718.png

相关文章
|
18小时前
|
消息中间件 测试技术 Linux
linux实时操作系统xenomai x86平台基准测试(benchmark)
本文是关于Xenomai实时操作系统的基准测试,旨在评估其在低端x86平台上的性能。测试模仿了VxWorks的方法,关注CPU结构、指令集等因素对系统服务耗时的影响。测试项目包括信号量、互斥量、消息队列、任务切换等,通过比较操作前后的时戳来测量耗时,并排除中断和上下文切换的干扰。测试结果显示了各项操作的最小、平均和最大耗时,为程序优化提供参考。注意,所有数据基于特定硬件环境,测试用例使用Alchemy API编写。
8 0
linux实时操作系统xenomai x86平台基准测试(benchmark)
|
18小时前
|
传感器 Linux 测试技术
xenomai 在X86平台下中断响应时间测试
该文讨论了实时操作系统中断响应时间的重要性,并介绍了x86中断机制和Xenomai的中断管理,包括硬件中断和虚拟中断的处理。Xenomai通过I-Pipe确保实时性,中断优先级高的Xenomai先处理中断。文中还提到了中断响应时间的测试设计,分别针对I-Pipe内核间虚拟中断和硬件中断进行了测试,并给出了在不同负载下的测试结果。
6 0
xenomai 在X86平台下中断响应时间测试
|
1天前
|
传感器 编解码
LabVIEW编程LabVIEW开发 控制RITEC RAM-5000 SNAP非线性高能超声测试系统例程与相关资料
LabVIEW编程LabVIEW开发 控制RITEC RAM-5000 SNAP非线性高能超声测试系统例程与相关资料
|
5天前
|
测试技术
使用CLion创建Cmake项目,使用GoogleTest和GoogleMock对代码进行测试
使用CLion创建Cmake项目,使用GoogleTest和GoogleMock对代码进行测试
17 3
|
8天前
|
Linux 测试技术 数据安全/隐私保护
CentOS安装MeterSphere并实现无公网IP远程访问本地测试平台
CentOS安装MeterSphere并实现无公网IP远程访问本地测试平台
|
10天前
|
缓存 监控 前端开发
【Flutter前端技术开发专栏】Flutter应用的性能调优与测试
【4月更文挑战第30天】本文探讨了Flutter应用的性能调优策略和测试方法。性能调优对提升用户体验、降低能耗和增强稳定性至关重要。优化布局(避免复杂嵌套,使用`const`构造函数)、管理内存、优化动画、实现懒加载和按需加载,以及利用Flutter的性能工具(如DevTools)都是有效的调优手段。性能测试包括基准测试、性能分析、压力测试和电池效率测试。文中还以ListView为例,展示了如何实践这些优化技巧。持续的性能调优是提升Flutter应用质量的关键。
【Flutter前端技术开发专栏】Flutter应用的性能调优与测试
|
10天前
|
前端开发 测试技术 持续交付
【Flutter 前端技术开发专栏】Flutter 中的 UI 测试与自动化测试
【4月更文挑战第30天】本文探讨了 Flutter 应用中UI测试和自动化测试的重要性,包括保障质量、提高效率和增强开发信心。Flutter提供`flutter_test`库进行Widget测试,以及`flutter_driver`进行集成测试。UI测试涵盖界面布局、交互和状态变化的验证,最佳实践建议尽早引入测试、保持用例简洁,并结合手动测试。未来,随着Flutter技术发展,UI测试和自动化测试将更加完善,助力开发高质量应用。
【Flutter 前端技术开发专栏】Flutter 中的 UI 测试与自动化测试
|
10天前
|
测试技术 持续交付 Swift
【Swift开发专栏】Swift中的测试驱动开发(TDD)
【4月更文挑战第30天】Test-Driven Development (TDD) 是一种软件开发方法,强调先编写测试用例再写代码。通过测试驱动代码、简明设计、重构和持续集成的循环过程,TDD助力构建高质量Swift软件。在Swift中,使用XCTest框架进行TDD实践,包括编写测试用例、实现功能、运行测试和重构。TDD的优势在于提升代码质量、减少调试时间,且与持续集成相结合。然而,学习曲线和确保测试覆盖率是挑战。TDD不仅是技术实践,也是思维方式,随着Swift的发展,其应用将更广泛。
|
10天前
|
SQL DataWorks Java
DataWorks操作报错合集之在阿里云 DataWorks 中,代码在开发测试阶段能够成功运行,但在提交后失败并报错“不支持https”如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
25 1
DataWorks操作报错合集之在阿里云 DataWorks 中,代码在开发测试阶段能够成功运行,但在提交后失败并报错“不支持https”如何解决
|
19天前
|
网络协议 安全 测试技术
性能工具之emqtt-bench BenchMark 测试示例
【4月更文挑战第19天】在前面两篇文章中介绍了emqtt-bench工具和MQTT的入门压测,本文示例 emqtt_bench 对 MQTT Broker 做 Beachmark 测试,让大家对 MQTT消息中间 BenchMark 测试有个整体了解,方便平常在压测工作查阅。
112 7
性能工具之emqtt-bench BenchMark 测试示例

热门文章

最新文章