测试平台系列(77) 完善测试计划页面

简介: 完善测试计划页面

大家好~我是米洛


我正在从0到1打造一个开源的接口测试平台, 也在编写一套与之对应的完整教程,希望大家多多支持。


回顾


上一节我们粗略介绍了下怎么设计前端页面。时隔一日,博主已经把代码码好了。

不得不说,前端代码还是非常非常难写的,感觉同样是crud,却比后端复杂许多。这一节我们继续补充这块内容。

恭喜EDG获取S11冠军,EDG牛皮!蹭个热度~

细节


细节部分大家可以参看具体的代码逻辑,我这边稍微介绍下页面的调整。

数据构造器(前置条件)


这块采用了Antd pro Components,也就是专业级的Card组件。看起来确实比我自己写的好上100个档次:

前后对比:

  • 改造前

27.jpg

说实话,非常地不专业

配色也不知道怎么配,我一直觉得前端很难,css是门学问。

  • 改造后

28.jpg

改造后层次分明,风格也统一

来看看ProCard的代码:

  • 安装ProCard


npm install --save @ant-design/pro-card
  • 使用

29.jpg

image

可以看到api比较简单,avatar就是卡片的图标,title是标题,description是描述。很习惯的antd风格。

用例列表部分


30.jpg

image

我们都知道测试计划就是为了组装测试用例的,所以我们这边给出了一组数据,可以通过项目获取到该项目下的测试用例树。

选中以后,下方会出现一个可拖拽的case列表,如果对于顺序有严格要求的,可以拖动列表,改变case的执行顺序。

与之对应的,需要通过项目获取到case数据:

31.jpg

这个组件用的是TreeSelect

也可以通过目录来选择case。

后端改动如下:

32.jpg

改造了get_directory方法

因为我们是有通过项目获取case目录的方法的,现在缺的就是是否要继续获取目录下的case。

所以定义了一个case_node的参数(参数是一个方法,获取子节点的方法)。

如果有该方法,则调用之获取对应的节点。

33.jpg

image

由于select数据比较奇怪,我们的数据库存的case_list又是id,所以我们想知道case名字并不是很容易。

于是这里带出项目树的同事,带出了case_id => case_name的映射关系: case_map。

这样做肯定会有问题,特别是数据量多的情况下。但一个project下的case有这么大规模的时候,也可以重构了。

最后,编写该接口:

34.jpg

image

前端通知部分


通知部分很简单,也是常规表单,给它们加上图标会更友好:

35.jpg

image

36.jpg

image

通知具体的逻辑还没有做,这涉及到人员的手机号,邮箱等。肯定是需要一个用户管理页面,用户也需要更新资料的页面。

APScheduler的坑


不得不说,这个库还真的是有一些问题。虽然看起来是比较美好,但现实给人当头一棒。

  • 踩坑
    当编辑测试计划的时候,使用scheduler.modify_job,就算你改变了trigger,也不会使cron表达式更新。

37.jpg

这边需要先编辑,再暂停,再恢复即可生效

最后来张稳定运行测试计划的图:

38.jpg

1分钟一次,非常稳定,数据也跑了很多了


最新的代码,我已经部署了。


http://test.pity.fun


欢迎大家提各种建议和意见。




相关文章
|
1月前
|
Kubernetes 测试技术 Perl
混沌测试平台 Chaos Mesh
混沌测试平台 Chaos Mesh
64 1
|
29天前
|
XML JavaScript 测试技术
Web自动化测试框架(基础篇)--HTML页面元素和DOM对象
本文为Web自动化测试入门指南,介绍了HTML页面元素和DOM对象的基础知识,以及如何使用Python中的Selenium WebDriver进行元素定位、操作和等待机制,旨在帮助初学者理解Web自动化测试中的关键概念和操作技巧。
36 1
|
30天前
|
测试技术 Android开发 iOS开发
Appium 是一个开源的自动化测试框架,它支持多种平台和多种编程语言
Appium是一款开源自动化测试框架,支持iOS和Android多平台及多种编程语言。通过WebDriver协议,开发者可编写自动化测试脚本。在iPhone上实现屏幕点击等操作需安装Appium及其依赖,启动服务器,并设置所需的测试环境参数。利用Python等语言编写测试脚本,模拟用户交互行为,最后运行测试脚本来验证应用功能。对于iPhone测试,需准备真实设备或Xcode模拟器。
59 1
|
1月前
|
运维 Kubernetes 监控
|
22天前
|
测试技术
一款功能完善的智能匹配1V1视频聊天App应该通过的测试CASE
文章列举了一系列针对1V1视频聊天App的测试用例,包括UI样式、权限请求、登录流程、匹配逻辑、消息处理、充值功能等多个方面的测试点,并标注了每个测试用例的执行状态,如通过(PASS)、失败(FAIL)或需要进一步处理(延期修改、待定、方案再定等)。
27 0
|
2月前
|
测试技术 API Android开发
《手把手教你》系列基础篇(九十七)-java+ selenium自动化测试-框架设计篇-Selenium方法的二次封装和页面基类(详解教程)
【7月更文挑战第15天】这是关于自动化测试框架中Selenium API二次封装的教程总结。教程中介绍了如何设计一个支持不同浏览器测试的页面基类(BasePage),该基类包含了对Selenium方法的二次封装,如元素的输入、点击、清除等常用操作,以减少重复代码。此外,页面基类还提供了获取页面标题和URL的方法。
65 2
支付系统---微信支付14----创建案例项目---介绍,第二步引入Swagger,接口文档和测试页面生成工具,定义统一结果的目的是让结果变得更加规范,以上就是谷粒项目的几个过程
支付系统---微信支付14----创建案例项目---介绍,第二步引入Swagger,接口文档和测试页面生成工具,定义统一结果的目的是让结果变得更加规范,以上就是谷粒项目的几个过程
|
8天前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
53 7
Jmeter实现WebSocket协议的接口测试方法
|
8天前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
35 3
快速上手|HTTP 接口功能自动化测试
|
8天前
|
JavaScript 前端开发 测试技术
ChatGPT与接口测试
ChatGPT与接口测试,测试通过
21 5