首页 > 其他分享 >测试实项中的偶必现难测bug之模糊匹配逻辑

测试实项中的偶必现难测bug之模糊匹配逻辑

时间:2024-11-23 15:04:40浏览次数:8  
标签:实项 白银 匹配 偶必现 测试数据 查询 会员 john bug

问题:

现在有一个场景,如果只是通过功能测试会比较难测,例如刚开始我们做会员的时候,只有白银会员,在用户分群的场景下,需要用条件逻辑匹配,当时开发用了like的匹配方式没有问题。1年后加了白银试用会员,导致在统计会员分群的时候明明条件选的是白银会员,但是统计的数量远大于实际的数量,就是因为like的写法包含了白银会员和白银试用会员。

思路:

如果开发使用了 LIKE 进行模糊匹配,而你需要精确匹配业务逻辑,测试可以通过以下几种方式来发现问题:

1. 用具体的测试数据进行验证

  • 设计测试用例,确保测试数据具有明确的边界条件和准确的匹配需求。
  • 如果查询条件应当完全匹配某些字段(例如,username='john'),使用具体的测试数据验证查询结果。如果查询返回了类似 john123 或 john_doe 的结果,那么可以确认存在模糊匹配问题。

示例:

  • 如果查询是 SELECT * FROM users WHERE username LIKE 'john'

标签:实项,白银,匹配,偶必现,测试数据,查询,会员,john,bug
From: https://blog.csdn.net/LYX_WIN/article/details/143919372

相关文章

  • 缓存穿透/击穿/雪崩(附生产BUG)
    优质博文:IT-BLOG-CN一、背景为什么要写这篇文章?生产缓存生成服务转java时,需要通过配置文件进行流量切换。开发人员同时打开了两个配置页面。原配置信息=ABCDEF。在第一个配置页面进行缓存切换,添加G业务缓存,配置信息=ABCDEFG。随后H业务也需要进行缓存切换,但开发人员在第......
  • win11网络修改篡改bug自动修改dns没有网络问题
    1.问题描述没有网络,dns一直是自动获取的,但是在重启或连接vpp后,会被设置成某个固定值正常情况:莫名其妙的篡改:  2.解决办法1.首先,删除所有网络的手动dns配置,控制中心那个dns管理没有用,在设置中删除网络,不然问题还会出现-2.然后,进入注册表\HKEY_LOCAL_MACHINE\SYSTE......
  • FPGA Verilog HDL代码如何debug?
    Q:Verilog代码如何debug?最近学习fpga,写了不少verilog,开始思考如何debug的问题!c语言是顺序执行,而verilog是并行执行,想请教如何debug自己的verilog代码,我以前一直都是对照着modelsim上的方针波形来看看哪里有逻辑错误!A:以下是一些常见的Verilog代码调试方法:1.仿真工具:正如......
  • 数据库属性带下划线的注意事项(下划线bug)
    ①如果数据库的属性带有下划线,如下②实体类代码1packagecom.lian.pojo;23importcom.baomidou.mybatisplus.annotation.IdType;4importcom.baomidou.mybatisplus.annotation.TableField;5importcom.baomidou.mybatisplus.annotation.TableId;6importjava......
  • 关于Tensorboard的一个小bug
    最近复现了github上的一个项目,链接如下:https://github.com/GzyAftermath/CAT-KD其中模型训练的过程作者用tensorboard进行了记录保存,在pycharm终端使用tensorboard--logdir=/path出现如下报错:tensorboard:无法将“tensorboard”项识别为cmdlet、函数、脚本文件或可运行......
  • 订单交易平台四:登录界面(使用Forms组件解决小bug)
    总任务:使用Forms组件解决用户输入错误、空,并且展示错误信息在输入框的下面解决用户校验,以及用户提交之后还可以将第一次输入的东西继续展示到页面1.示例1.1先导入forms第三方模块包,并且写入我们前端组要校验的字段```fromdjangoimportformsclassLoginForm(forms.F......
  • bugku media(未解出)
    url:https://ctf.bugku.com/challenges/detail/id/573.html附件2个文件一个misc1.png一个key.wav 既然是key.wav一定隐藏了什么东西查看没看到什么东西misc1.png尾部有一段附加数据,不知道有什么用. RjAgOUYgOTkgODMgRjAgOUYgOTIgQjUgRjAgOUYgOEMgQkYgRjAgOUYgOEUgQTQg......
  • 记一次控件提升后,运行却不显示的Bug
    .h文件#ifndefVOLUMETOOLBTN_H#defineVOLUMETOOLBTN_H#include<QToolButton>#include<memory>classVolumeToolBtn:publicQToolButton{Q_OBJECTpublic:explicitVolumeToolBtn(QWidget*parent=nullptr);~VolumeToolBtn()override;......
  • Debuggers 1012:Introductory GDB
    OpenSecurityTraining2LearningPaths:VulnerabilityHunting&Exploitationpython:https://www.learnpython.org/路径图:https://ost2.fyi/OST2_LP_Vulns_Exploits.pdfDebuggers1012:IntroductoryGDB(与python)-->Architecture1001:x86-64Assembly-->R......
  • python多进程debug
    代码调试问题阐述最近遇到一个pythondebug多进程的问题有一个进程A,这个进程会fork出8个进程B,forkjoin结束后,又会fork出8个进程A。假设按时间有序,我就只想断fork出的第一个B和第一个进程A,怎么做?(breakpointjustbreakonlyonce)类似于java多线程调试的意思,只断一个线程,all-......