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

2021年09月16日 阅读数:3
这篇文章主要向大家介绍测试平台系列(59) 调整用例列表页,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

你们好~我是米洛


这是一个完整的接口测试平台系列教程,但愿能和你们一块儿学习,从0到1打造一个开源平台。



欢迎关注个人公众号测试开发坑货,获取最新文章教程!前端

回顾

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

理清关系

以前用例表里面会有一个project_id和category字段,分别表明项目和目录。咱们上节已经制造了目录表,因此须要先去掉以前的project_id字段和目录字段,改成directory_id字段。缓存

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

但不要紧,原本咱们就是要把项目列表页里的case页面剔除的。性能

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

form字段里面也作相似的事情

改写查询项目的接口

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

页面上的改动:学习

去掉了左侧的用例列表

规划一下列表页

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

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

由于没画原型图,因此直接用作好的页面展现了

能够看到,布局是左右布局:code

  • 左侧orm

    项目选择和目录树,目录树通过咱们上一节的处理,能够疯狂嵌套。目前来看的话,目录还不支持移动,比较惋惜。

  • 右侧

    右侧就是一个用例列表页,XXX目录下的用例列表,其中还可以根据用例名称和建立人来过滤case。

    这边case就没有继续作分页了,单个目录下的case应该不会到几千条那么夸张。

接下来干吗?

固然是为前端的展现提供这些数据。咱们目前须要支持建立人+用例名称+目录的方式进行查询。

而目录又会嵌套,因此咱们须要找出目录的全部儿子。又由于目录不可能会那么那么多,因此咱们找出待查目录全部非根节点目录

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

若是用一层层for循环去查询数据的话,势必会很影响性能,固然我这里建议你们把查询的结果缓存到redis,通常来讲目录我们不会轻易更换,更换的时候删除下缓存便可,这样会事半功倍。

开始行动

  • 编写获取A下面全部子目录的方法

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

首先获取全部directory_id下的目录,而后找出未删除且directory_id in这些目录的case。

以后若是有其余条件,好比name,create_user这样的,再加入筛选条件

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

完善list接口

最终效果

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

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