测试平台系列(59) 调整用例列表页

简介: 调整用例列表页

大家好~我是米洛


这是一个完整的接口测试平台系列教程,希望能和大家一起学习,从0到1打造一个开源平台。


回顾


上一节我们讲了怎么去设计用例目录表,而因为之前我们的case是跟项目绑定的,所以我们这一节去改进case相关部分。

理清关系


之前用例表里面会有一个project_id和category字段,分别代表项目和目录。我们上节已经制造了目录表,所以需要先去掉之前的project_id字段和目录字段,改为directory_id字段。

其实我们可以简单点,把project_id直接换成directory_id,接着删除category字段。但这样的话,会影响到项目列表页面。

但没关系,本来我们就是要把项目列表页里的case页面剔除的。

34.jpg

原来的project_id换成了directory_id并且注释掉了category

35.jpg

form字段里面也做类似的事情

改写查询项目的接口


36.jpg

去掉原先查询case树的方法,不返回tree了

页面上的改动:

37.jpg

去掉了左侧的用例列表

规划一下列表页


既然旧的列表页给干掉了,那么新的列表页应该怎么展示呢?

上节我们编写了case目录,那用例是跟目录关联起来的,所以我们大概设想一下这样一个页面:

38.jpg

因为没画原型图,所以直接用做好的页面展示了

可以看到,布局是左右布局:

  • 左侧
    项目选择和目录树,目录树经过我们上一节的处理,可以疯狂嵌套。目前来看的话,目录还不支持移动,比较可惜。
  • 右侧
    右侧就是一个用例列表页,XXX目录下的用例列表,其中还能够根据用例名称和创建人来过滤case。
    这边case就没有继续做分页了,单个目录下的case应该不会到几千条那么夸张。

接下来干嘛?

当然是为前端的展示提供这些数据。我们目前需要支持创建人+用例名称+目录的方式进行查询。

而目录又会嵌套,所以我们需要找出目录的所有儿子。又因为目录不可能会那么那么多,所以我们找出待查目录所有非根节点目录

比如我要查根目录A下的数据,那么其他根目录肯定不是A的儿子,而是A的兄弟。

如果用一层层for循环去查询数据的话,势必会很影响性能,当然我这里建议大家把查询的结果缓存到redis,一般来说目录咱们不会轻易更换,更换的时候删除下缓存即可,这样会事半功倍。

开始行动


  • 编写获取A下面所有子目录的方法

39.jpg

image

  1. 首先找出所有parent 等于 directory_id 或者 不是根目录的数据
  2. 和之前一样,把他们塞到一个map里面去,这样建立parent -> son(也就是父亲到儿子之间的映射)
  3. 编写获取儿子的方法(递归),把所有的孩子节点都放到result之中
  • 调整list_testcase方法

40.jpg

image

首先获取所有directory_id下的目录,然后找出未删除且directory_id in这些目录的case。

之后如果有其他条件,比如name,create_user这样的,再加入筛选条件

接着根据case名称排序即可。

完善list接口


41.jpg

image

最终效果


42.jpg

image

只看右侧的话,他就是一个列表页面,但这边的区别就是他和左侧目录树进行了打通

拜了个拜,下篇讲下如何部署,至于用例的编辑/新增/执行这块,还需要一些时间。



相关文章
|
1月前
|
Kubernetes 测试技术 Perl
混沌测试平台 Chaos Mesh
混沌测试平台 Chaos Mesh
64 1
|
2月前
|
传感器 数据采集 监控
LabVIEW电池管理系统测试平台
LabVIEW电池管理系统测试平台
39 4
|
8天前
|
测试技术
软件测试用例设计之微信群抢红包经典用例
作者在浏览招聘网站时遇到为微信群发和抢红包设计测试用例的问题,作为软件测试新手,作者通过实际体验并撰写测试案例来加深对业务的理解,并分享了测试案例表格。需要注意的是,该用例未考虑添加银行卡支付、红包类型选择及红包描述。
22 5
软件测试用例设计之微信群抢红包经典用例
|
1天前
|
测试技术
基于LangChain手工测试用例转App自动化测试生成工具
在传统App自动化测试中,测试工程师需手动将功能测试用例转化为自动化用例。市面上多数产品通过录制操作生成测试用例,但可维护性差。本文探讨了利用大模型直接生成自动化测试用例的可能性,介绍了如何使用LangChain将功能测试用例转换为App自动化测试用例,大幅节省人力与资源。通过封装App底层工具并与大模型结合,记录执行步骤并生成自动化测试代码,最终实现高效自动化的测试流程。
11 4
|
22天前
|
测试技术
基于LangChain手工测试用例转Web自动化测试生成工具
该方案探索了利用大模型自动生成Web自动化测试用例的方法,替代传统的手动编写或录制方式。通过清晰定义功能测试步骤,结合LangChain的Agent和工具包,实现了从功能测试到自动化测试的转换,极大提升了效率。不仅减少了人工干预,还提高了测试用例的可维护性和实用性。
31 4
|
30天前
|
测试技术 Android开发 iOS开发
Appium 是一个开源的自动化测试框架,它支持多种平台和多种编程语言
Appium是一款开源自动化测试框架,支持iOS和Android多平台及多种编程语言。通过WebDriver协议,开发者可编写自动化测试脚本。在iPhone上实现屏幕点击等操作需安装Appium及其依赖,启动服务器,并设置所需的测试环境参数。利用Python等语言编写测试脚本,模拟用户交互行为,最后运行测试脚本来验证应用功能。对于iPhone测试,需准备真实设备或Xcode模拟器。
59 1
|
1月前
|
人工智能 自然语言处理 测试技术
基于LangChain手工测试用例转接口自动化测试生成工具
本文介绍利用大语言模型自动生成接口自动化测试用例的方法。首先展示传统通过HAR文件生成测试用例的方式及其局限性,随后提出结合自然语言描述的测试需求与HAR文件来生成更全面的测试脚本。通过LangChain框架,设计特定的提示词模板,使模型能够解析测试需求文档和HAR文件中的接口信息,并据此生成Python pytest测试脚本。示例展示了正常请求、非法请求及无效路径三种测试场景的自动化脚本生成过程。最终,整合流程形成完整代码实现,帮助读者理解如何利用大模型提高测试效率和质量。
75 2
|
1月前
|
运维 Kubernetes 监控
|
2月前
|
测试技术
详解单元测试问题之Mockito中添加或更新打桩列表如何解决
详解单元测试问题之Mockito中添加或更新打桩列表如何解决
40 3
|
1月前
|
存储 测试技术 API
apifox实例应用-自动化测试用例for循环的使用
总结来说,通过在Apifox自动化测试用例中结合for循环的使用,我们可以有效地对接口进行批量测试,提升测试效率和覆盖率。同时,通过参数化测试数据的灵活应用,能够确保我们的接口在不同的输入条件下都能保持正确的行为。这种方法能够显著减少手动测试工作量,同时通过标准化的流程确保测试的一致性。
62 0