功能测试之"点点点"如何巧妙的获取页面查询sql

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 检查测试环境的日志中是否会打印查询sql,这个受开发的架构设计以及日志输出级别等配置的影响,查看部署包的日志文件输出到了哪,然后再页面进行相应的操作,同时检查log文件里面是否有打印相关的sql。

作为一名测试人员,面试造火箭,进去拧螺丝 这句话是不是经常听到呢, 是不是在大家眼里,功能测试就是完全没有任何技术含量,完全学不到东西呢?在这里,小编并不这么认为。接下来为大家分享一下测试过程中学会的一个小技巧。


假设让你去验证某个页面的数据是否正确 ,那你是不是需要知道数据存储在哪些表里面,要了解页面的明细都是从哪里查出来的,有没有包含什么过滤条件之类的,如果每次都去问开发的话 ,问多了会不会让人觉得很烦? 不妨尝试一下下面的这种方法:


1、检查测试环境的日志中是否会打印查询sql,这个受开发的架构设计以及日志输出级别等配置的影响

查看部署包的日志文件输出到了哪,然后再页面进行相应的操作,同时检查log文件里面是否有打印相关的sql。


微信图片_20220113214509.png


看上面这张图,可以看到 有日志打印出来,只是打印出来的sql中会包含? 这种占位符,需要自己用具体的参数去替换之后,才能看到完整的sql,接下来可以利用IDEA的一个插件去查看完整sql


2、下载IDEA工具,安装好之后,安装Mybatis Log插件,然后在页面右下角会有一个Mybatis Log的入口:



微信图片_20220113214512.png


3、日志中一般会在接口名后面加上 ==>  Preparing,打印查询sql,加上==> Parameters标识当前的查询条件参数。需要将PreparingParameters的内容一起复制出来放到插件里面进行转换。

可以用类似的命令去查看log
tail -f xxx.log 
tail -f xxx.log | grep -C 100 '==>  Preparing:'

微信图片_20220113214514.png


以上的操作你学会了吗?赶紧到工作中去试一下吧,再也不用一个个去问开发这个sql怎么来的了。

如果想要练习的小伙伴,可以去gitee上找开源的项目自己在本地搭建一下,然后看看是否会有这样的效果喔,这个是我在工作中学会的一个小技巧,正好在gitee上也看到了一个开源网站{https://gitee.com/qiankunpingtai/erpUp}可以用来练习一下,感兴趣的可以自己试一下,部署在本地玩玩,部署有问题的可以私聊我。


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
15天前
|
SQL NoSQL Java
Java使用sql查询mongodb
通过使用 MongoDB Connector for BI 和 JDBC,开发者可以在 Java 中使用 SQL 语法查询 MongoDB 数据库。这种方法对于熟悉 SQL 的团队非常有帮助,能够快速实现对 MongoDB 数据的操作。同时,也需要注意到这种方法的性能和功能限制,根据具体应用场景进行选择和优化。
52 9
|
1月前
|
SQL 存储 人工智能
Vanna:开源 AI 检索生成框架,自动生成精确的 SQL 查询
Vanna 是一个开源的 Python RAG(Retrieval-Augmented Generation)框架,能够基于大型语言模型(LLMs)为数据库生成精确的 SQL 查询。Vanna 支持多种 LLMs、向量数据库和 SQL 数据库,提供高准确性查询,同时确保数据库内容安全私密,不外泄。
133 7
Vanna:开源 AI 检索生成框架,自动生成精确的 SQL 查询
|
2月前
|
SQL Java
使用java在未知表字段情况下通过sql查询信息
使用java在未知表字段情况下通过sql查询信息
42 8
|
2月前
|
SQL 安全 PHP
PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全
本文深入探讨了PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全。
70 4
|
2月前
|
SQL 监控 关系型数据库
SQL语句当前及历史信息查询-performance schema的使用
本文介绍了如何使用MySQL的Performance Schema来获取SQL语句的当前和历史执行信息。Performance Schema默认在MySQL 8.0中启用,可以通过查询相关表来获取详细的SQL执行信息,包括当前执行的SQL、历史执行记录和统计汇总信息,从而快速定位和解决性能瓶颈。
|
2月前
|
SQL 存储 缓存
如何优化SQL查询性能?
【10月更文挑战第28天】如何优化SQL查询性能?
187 10
|
2月前
|
SQL 关系型数据库 MySQL
|
3月前
|
SQL 数据库 开发者
功能发布-自定义SQL查询
本期主要为大家介绍ClkLog九月上线的新功能-自定义SQL查询。
|
2月前
|
SQL 关系型数据库 MySQL
mysql编写sql脚本:要求表没有主键,但是想查询没有相同值的时候才进行插入
mysql编写sql脚本:要求表没有主键,但是想查询没有相同值的时候才进行插入
38 0
|
3月前
|
SQL 数据可视化 BI
SQL语句及查询结果解析:技巧与方法
在数据库管理和数据分析中,SQL语句扮演着至关重要的角色