美文网首页
自定义表查询小工具使用手册

自定义表查询小工具使用手册

作者: hao0_0 | 来源:发表于2024-08-18 13:20 被阅读0次

背景:

在测试过程中,我们需要频繁地检查多个表的数据准确性。由于不同的业务场景涉及不同的数据表,这个过程不仅容易导致数据误读或遗漏,还可能因为耗时而分散我们的注意力,降低测试效率。

问题:

数据查询繁琐: 业务的不同模块往往要求我们查询多个相关的数据表。仅依靠传统的数据查询工具进行这项工作既繁琐又不够直观,难以快速捕捉到关键信息。

易出错: 面对大量数据时,手动查找很容易发生误读或遗漏,增加了测试中的错误率。

效率低: 手动查询和比对数据消耗的时间和精力,降低了测试的整体效率。

解决方案:

为了应对上述挑战,做一款专用工具,为在帮助我们在各种场景下全局掌握订单状态,或者自定义需要查询的特定场景。这款工具简化了多表查询的过程,让数据呈现更加直观,从而显著提升了测试效率和专注度。

提高准确性: 工具通过自动化查询,减少了人为错误的可能性,确保数据的一致性和准确性。

提升效率: 通过一键式查询和直观的数据展示,大大缩短了查找和分析数据所需的时间,使测试人员能够更专注于业务逻辑验证。

增强可定制性: 用户可以根据具体需求自定义查询场景,使得工具更加贴合实际工作流程,提高了灵活性。

工具:

----------------------------------------------------------------

一、安装 PyQt5

PyQt5 是一个 Python 库,用于构建 GUI 应用程序。首先确保你的环境中已安装 Python,然后可以通过 pip 安装 PyQt5 和其他依赖项:

pip install pyqt5pip install pymysql

二、工具介绍

此工具是一个基于 PyQt5 构建的图形用户界面应用程序,旨在提高数据分析和查询效率。输入订单ID或自定义条件,并根据预设的查询逻辑从多个数据库表中获取数据。通过将数据集中展示在一个界面上,可以快速地分析数据,帮助工作提高效率。

特点 :

自定义表与字段 : 用户可以根据需要选择不同的业务场景表,并定义要展示的字段。

灵活的窗口配置 : 用户可以设置窗口大小和布局,以便更高效地查看数据。

多表查询 : 支持同时查询多个相关表,并在界面上展示结果。

环境选择 : 用户可以选择不同的环境来进行查询,如集群号选择测试环境。

三、使用说明

启动应用 :

- 终端或pycharm运行文件程序即可。

输入查询条件 :

- 自定义查询目标值,输出订单号/标的/用户UID/自定义。

选择环境 :

- 使用下拉菜单选择查询的环境,例如 “95-资金平台-测试环境A(k8s)-10.90.78.69”。

执行查询 :

- 点击“查询”按钮开始查询。

查询完成后,每个相关的数据库表的结果将在各自的表格中显示出来。

表格将按照预先设定的布局自动调整高度。

1. 查看结果 :

- - 每个表格都包含了相关的字段信息,例如订单状态、事件类型等。

可以通过滚动查看每张表的内容。

四、 tables 字典详解

tables 字典用于定义要展示的表及其字段。这是一个关键配置,决定了应用程序查询哪些表以及如何显示数据。

示例 :

tables={"fund_lend.t_event":{"columns":["FuiFundId","FuiEventId","FstrEventType","FstrEventStatus","RIGHT(FstrRemark, 15) as FstrRemark","FuiDealCount"],"query_keyword":"FstrLoanOrderId","full_row":True,"height":250},"fund_lend.t_loan_order":{"columns":["FuiStatus","FuiBorrowerId","FuiProductId","FuiLoanAmount","FuiRepayCardId"],"query_keyword":"FstrLoanOrderId","full_row":False,"height":80},"fund_lend.t_credit_order":{"columns":["FuiOrderStatus as OrderStatus","FuiQuotaStatus as QuotaStatus","FuiMatchRuleHandleId"],"query_keyword":"FstrLoanOrderId","full_row":False,"height":80},"fund_lend.t_credit_audit_order":{"columns":["FuiOrderStatus as OrderStatus","FuiQuotaStatus as QuotaStatus","FuiFundId","FuiLoanId"],"query_keyword":"FstrLoanOrderId","full_row":False,"height":120},"fund_lend.t_credit_audit_record":{"columns":["FuiFundId","FstrAPIType","FstrAPIResult"],"query_keyword":"FstrLoanOrderId","full_row":False,"height":120},"fund_lend.t_lending_order":{"columns":["FuiOrderStatus","FuiFundId","FstrLoanOrderId"],"query_keyword":"FstrLoanOrderId","full_row":False,"height":None},"fund_lend.t_credit_failure_reason":{"columns":["FuiFundId","FstrFundProjectId as ProjectId","FstrCommentInfo","FstrMatchOrderId"],"query_keyword":"FstrLoanOrderId","full_row":False,"height":None},}

属性解释 :

1、columns :

表示查询时返回的字段列表。字段名可以使用 SQL 的函数(如 RIGHT() )进行修改。

示例: "columns": ["FuiFundId", "FuiEventId", "FstrEventType"]

利用sql重命名显示字段:

示例: RIGHT(FstrRemark, 15) as FstrRemark,最终展示 “FstrRemark”

2、query_keyword :

表示用于连接查询的关键字,通常为订单ID字段,也可以自定义标的等。

示例: "query_keyword": "FstrLoanOrderId"

3、full_row :

- 指定是否应该为该表分配整个行的高度。

True : 表格占据整个行的高度。

False : 表格与其他表格共享行高度,但做多一行2个表展示。

示例: "full_row": True

4、height :

指定表格的固定高度。

如果 height 为 None ,则会根据剩余空间平均分配高度。

示例: "height": 250 (注意:总行高不能超过窗口总高)

五、tool_info、env_choose 及 tool_size 变量

1、tool_info:

一个列表,包含两个字符串元素:

第一个字符串 "订单查询工具":代表GUI工具的名称。

第二个字符串 "订单:":代表在GUI中输入订单号时的提示文字。

2、env_choose:

一个字典,包含两个键值对:

"defalt_cle":代表默认选择的环境集群号。

"only_show_cle_name":代表列表内填入团队代码,其中包含只显示当前项目的数据库信息,["kefu","loan","risk","shared","fundhub","fundplat","collection","creditcore"],如果不填展示所有。

3、tool_size:

一个列表,包含两个整数元素:

第一个整数 800:代表GUI窗口的宽度。

第二个整数 750:代表GUI窗口的高度。

六、示例

假设有一个订单ID 342566425099174219 需要查询。

输入订单ID :

- 输入 342566425099174219 到订单文本框。

选择环境 :

- 选择 “12-资金平台-测试专用A-10.80.77.125”。

执行查询 :

- 点击“查询”按钮。

此时界面上将显示来自各个表的数据,例如 t_event , t_loan_order 等。

七、提高效率的场景

快速定位问题 :

- 当查看关于订单的问题时,能够迅速查找订单状态及相关信息。

例如,要看订单在借款哪一步,可通过此工具看见订单状态和订单的其他关键信息。

监控订单流程 :

- 可以实时查看订单在系统中的处理情况,帮助监控业务流程。

例如,通过 t_event 表可以跟踪订单的状态变更历史。

数据分析 :

- 快速收集数据进行分析,比如订单的处理时间、成功率等指标。

例如,可以统计 t_lending_order 表中的订单完成率。

八、总结

此工具通过集成多个数据表查询功能,简化了数据获取的过程,大大提高了工作效率。

对测试人员来说,在工作中不仅提升查询速度,还减少了信息获取出错的可能性。

通过定制化的界面和查询逻辑,可以更加专注于业务本身,而不是数据收集过程,提高测试专注度。

相关文章

  • Spring Data JPA

    构建实力类 @Entity注解、@Column 单表操作 多表查询 自定义查询

  • Django 进阶教程笔记(一)

    自定义标签 自定义过滤器 Jinja2 自定义 manager (封装查询语句) 自定义Form 集成已有数据库表...

  • odoo中操作第三章表

    自定义第三章表的表名,自身关联many2many sql语句操作第三张表,增加数据 查询

  • 单表数据查询

    单表查询示例Student表: Student表 Course表 SC表 查询若干列 查询指定列 查询Studen...

  • DDL-数据表操作

    查询 查询当前数据库所有表 查询表结构 查询指定表的建表语句 创建

  • Android好博客文章汇总

    写给Android开发者的混淆使用手册 从此再有不愁自定义View——Android自定义view详解 Andro...

  • SQL干货篇之查询数据

    单表查询 只在一个表中查询数据 多表查询 同时查询多个表 说明:这是在学生表student和成绩表SC中查询成绩大...

  • Access查询有哪些

    Access查询有哪些 Access查询分选择查询追加查询更新查询生成表查询交叉表查询联合查询等

  • sql _ 连表查询 & 授权

    一,连表查询 1)连表 简单查询_where 2) 连表 多种方式查询 3)子查询 综合以上查询示例 二,DCL数...

  • mysql查询、事物(四)

    知识要点: 单表查询 子查询 联表查询 事务 在进行查询之前,我们要先建好关系表,并往数据表中插入些数据。为查询操...

网友评论

      本文标题:自定义表查询小工具使用手册

      本文链接:https://www.haomeiwen.com/subject/gapjxktx.html