测试过程中印象最深刻的bug

2023-11-14

我就想到在我刚入行不久的时候有一个BUG。当时我们做的是一个CRM客户管理系统,里边有个客户列表,当时按照测试用例去执行的时候,发现出现点击客户删除却无法删除,于是就提了一个单,但是开发后来发现删除客户没问题,又给我打回,后来我去查看服务器日志结合数据库,去进行定位,发现在出现删除异常操作的时候,没有输出日志。这时,又去尝试了一下删除其他人,发现可以删除,同时有日志的输出,抛开日志不谈,当时出现这个问题我第一想法就是是否是数据库里的某一列的参数加了外键,导致删除不了,然后我就去数据库查看,发现并没有,然后我就尝试把出现异常的那条数据里边的参数一个一个去改,尝试是不是能成功删除,当客户名称被改掉后,发现删除成功。经过对比和推断,我推测如果客户名称一样就会无法删除,并且不会输出日志,其他情况删除功能是正常的,然后我把数据库中其中一个客户的名称改掉之后,果然两个都能删掉。接下来我去验证我的想法,我找了一个可以正常删除的这个客户,我看了一下开发打的日志,我们开发在日志里边有打他的SQL语句,我发现他是通过客户名查到了这个客户ID,然后用delete语句去删除,通过where ID等于去删除。那么当名字相同的客户查到了两个ID而代码里删除 delete 的时候用的是等于号,等于两个ID,数据库不支持这样的语法。所以给我提示的是删除异常。那么最后我们的开发进行修复,修修这个bug的方式是将用户进行删除动作的时候,传参改为传前端的点击的客户的ID,让后端直接通过ID去删除,因为这个ID是一个主键全局唯一的不重复的。同时将 delete 语句中的等于号改成了in支持单个删,也支持批量删。从这个BUG中我清楚了在进行BUG提单时,不要一出现BUG立马盲目就进行提单,一定结合需求做多方面分析,结合自己的经验找出BUG的特征,描述准确细致,方便开发去进行复现,再去进行提单,尽量尝试结合日志和数据库去定位BUG,避免开发无法进行复现,从而影响软件质量,从那过后我对自己提的BUG也尝试去进行定位,方便开发,也方便自己,提高整个工作效率。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

测试过程中印象最深刻的bug 的相关文章

  • 猫头虎博主的MySQL救援指南:轻松解决初始化问题(nysqld: Can create directort :mysgl mysg! 9-winx64 data errno such file o)

    博主猫头虎的技术世界 欢迎来到 猫头虎的博客 探索技术的无限可能 专栏链接 精选专栏 面试题大全 面试准备的宝典 IDEA开发秘籍 提升你的IDEA技能 100天精通Golang Go语言学习之旅 领域矩阵 猫头虎技术领域矩阵 深入探索各技
  • 电商数据接口API深度解析

    随着电子商务的快速发展 电商平台之间的竞争也日益激烈 为了在市场中保持领先地位 电商平台需要不断地优化用户体验 提供个性化的服务和精准的推荐 而这一切都离不开数据 电商数据接口API作为一种高效 便捷的数据交互方式 被广泛应用于电商领域 本
  • 跨境电商三大趋势已经涌现

    在过去的几年里 跨境电商在推动外贸增长中发挥了至关重要的作用 成为了引领行业发展的强大引擎 然而 随着2024年的到来 跨境电商行业又站在了崭新的起点 准备攀登新的发展高峰 数据显示 得益于经济的逐步复苏 未来三年跨境电商行业预计将以16
  • Redis Geo:掌握地理空间数据的艺术

    欢迎来到我的博客 代码的世界里 每一行都是一个故事 Redis Geo 掌握地理空间数据的艺术 前言 Redis Geo基本概念 Geo模块的目的 工作原理 地理坐标系统
  • 【计算机开题报告】二手车交易平台

    一 选题依据 简述国内外研究现状 生产需求状况 说明选题目的 意义 列出主要参考文献 选题目的 意义 如今时代网络技术正在快速发展 电子商务技术也以极为强势的姿态闯入人们的视野之中 随着人们生活质量的提升 为了对身边二手物品进行回收利用 二
  • 【计算机开题报告】图书管理系统

    一 选题依据 简述国内外研究现状 生产需求状况 说明选题目的 意义 列出主要参考文献 国内外研究现状 国外研究现状 在很多发达国家 图书管理系统的应用和技术发展已经相对完善 并且还建立了数字图书馆 各方面的情况也非常成熟 而图书管理的应用价
  • Qt源码分析:Qt程序是怎么运行起来的?

    一 从 exec 谈起 一个标准的Qt gui程序 在启动时我们会coding如下几行简洁的代码 include widget h include
  • 拼多多详情API开启运营比价新纪元

    随着互联网的快速发展 电商行业正在迅速崛起 拼多多作为一家新兴的电商平台 凭借其独特的营销策略和创新的商业模式 成为了电商行业的一匹黑马 在拼多多的成功背后 其详情API接口营销起到了至关重要的作用 本文将详细介绍拼多多详情API接口营销的
  • 【软件测试】学习笔记-高效提交Bug

    本篇文章介绍如何才能写出一份高效的软件缺陷报告 测试工程师需要利用对需求的理解 高效的执行力以及严密的逻辑推理能力 迅速找出软件中的潜在缺陷 并以缺陷报告的形式递交给开发团队 缺陷报告是测试工程师与开发工程师交流沟通的重要桥梁 也是测试工程
  • 【Mysql】InnoDB 引擎中的页目录

    一 页目录和槽 现在知道记录在页中按照主键大小顺序串成了单链表 那么我使用主键查询的时候 最顺其自然的办法肯定是从第一条记录 也就是 Infrimum 记录开始 一直向后找 只要存在总会找到 这种在数据量少的时候还好说 一旦数据多了 遍历耗
  • 【计算机毕业设计】Java图书馆智能选座系统

    现代经济快节奏发展以及不断完善升级的信息化技术 让传统数据信息的管理升级为软件存储 归纳 集中处理数据信息的管理方式 本图书馆智能选座系统就是在这样的大环境下诞生 其可以帮助使用者在短时间内处理完毕庞大的数据信息 使用这种软件工具可以帮助管
  • 38条Web测试经验分享

    1 页面链接检查 每一个链接是否都有对应的页面 并且页面之间切换正确 可以使用一些工具 如LinkBotPro File AIDCS HTML Link Validater Xenu等工具 LinkBotPro不支持中文 中文字符显示为乱码
  • 图解python | 字符串及操作

    1 Python元组 Python的元组与列表类似 不同之处在于元组的元素不能修改 元组使用小括号 列表使用方括号 元组创建很简单 只需要在括号中添加元素 并使用逗号隔开即可 tup1 ByteDance ShowMeAI 1997 202
  • 通俗易懂,十分钟读懂DES,详解DES加密算法原理,DES攻击手段以及3DES原理

    文章目录 1 什么是DES 2 DES的基本概念 3 DES的加密流程 4 DES算法步骤详解 4 1 初始置换 Initial Permutation IP置换 4 2 加密轮次 4 3 F轮函数 4 3 1 拓展R到48位 4 3 2
  • 【计算机毕业设计】二手图书交易系统

    随着世界经济信息化 全球化的到来和互联网的飞速发展 推动了各行业的改革 若想达到安全 快捷的目的 就需要拥有信息化的组织和管理模式 建立一套合理 动态的 交互友好的 高效的二手图书交易系统 当前的信息管理存在工作效率低 工作繁杂等问题 基于
  • 【计算机毕业设计】二手家电管理平台

    时代在飞速进步 每个行业都在努力发展现在先进技术 通过这些先进的技术来提高自己的水平和优势 二手家电管理平台当然不能排除在外 二手家电管理平台是在实际应用和软件工程的开发原理之上 运用java语言以及前台VUE框架 后台SpringBoot
  • 面试官问,如何在十亿级别用户中检查用户名是否存在?

    面试官问 如何在十亿级别用户中检查用户名是否存在 前言 不知道大家有没有留意过 在使用一些app注册的时候 提示你用户名已经被占用了 需要更换一个 这是如何实现的呢 你可能想这不是很简单吗 去数据库里查一下有没有不就行了吗 那么假如用户数量
  • 数据库 | 面试官:一次到底插入多少条数据合适啊?.....面试连环炮

    数据库 面试官 一次到底插入多少条数据合适啊 面试连环炮 数据库插入操作的基础知识 插入数据是数据库操作中的基础 但是 我们程序员将面临随之而来的问题 如何快速有效地插入数据 并保持数据库 性能 当你向数据库中插入数据时 这些数据直接存储到
  • MongoDB - 库、集合、文档(操作 + 演示 + 注意事项)

    目录 一 MongoDB 1 1 简介 a MongoDB 是什么 为什么要使用 MongoDB b 应用场景 c MongoDB 这么强大 是不是可以直接代替 MySQL d MongoDB 中的一些概念 e Docker 下载 1 2
  • 15:00面试,15:06就出来了,问的问题有点变态。。。

    从小厂出来 没想到在另一家公司又寄了 到这家公司开始上班 加班是每天必不可少的 看在钱给的比较多的份上 就不太计较了 没想到9月一纸通知 所有人不准加班 加班费不仅没有了 薪资还要降40 这下搞的饭都吃不起了 还在有个朋友内推我去了一家互联

随机推荐

  • Python while循环语句语法格式

    视频版教程 Python3零基础7天入门实战视频教程 初始化语句 while 循环条件 循环体 迭代语句 初始化语句 一条或多条语句 用于完成一些初始化工作 初始化语句在循环开始之前执行 循环条件 这是一个布尔表达式 这个表达式能决定是否执
  • 主板电源接口示意图_台式电脑主板的接口线及安装细节图解

    如果你是玩台式电脑用户 那么你肯定知道 电脑最麻烦的就是主板上的接口了 稍有不慎接错线主板就会烧毁 因此这是一个很重要的环节 今天小编就来给大家介绍主板上的接口都是些什么 该怎么接 01 认识主板供电接口 在主板上 我们可以看到一个长方形的
  • 实证论文|数据处理问题合集

    目录 1stata 如何留下至少有连续5年的观测 2stata如何剔除13年及以后公司样本 python 3stata如何根据文本数据生成新数据 4如何将季度数据处理为年度数据 5如何根据分位数划分组别 6如何将省份划分为东中西部地区 7出
  • Java-1.9

    题目描述 编写程序 显示宽为4 5 高为7 9的矩形的面积和周长 代码 public class Rectangle public static void main String args final double width 4 5 he
  • Spring之refresh的12个步骤

    根据B站黑马视频总结 1 refresh的12个步骤 prepareRefresh obtainFreshBeanFactory prepareBeanFactory postProcessBeanFactory invokeBeanFac
  • python中lambda语法格式及实例

    Python 3中的Lambda函数的语法格式如下 lambda 参数列表 表达式Lambda函数以关键字lambda开始 后面是参数列表 参数列表可以包含任意数量的参数 但只能有一个表达式 参数列表的语法和函数定义的参数列表语法相同 可以
  • RTC实时时钟实验(低功耗、纽扣电池供电)

    目录 I MX6U RTC 简介 硬件原理分析 实验程序编写 修改文件MCIMX6Y2 h 编写实验程序 编译下载验证 编写Makefile 和链接脚本 编译下载 实时时钟是很常用的一个外设 通过实时时钟我们就可以知道年 月 日和时间等信息
  • LayaBOX添加颜色滤镜

    初始化舞台 Laya init 1334 750 Laya WebGL 设置舞台背景色 Laya stage bgColor ffffff 原始位图 createImg 100 50 红色滤镜 creteRedFilter 灰色滤镜 cre
  • linux 调试技术

    本文讨论了四种调试Linux程序的情况 在第1种情况中 我们使用了两个有内存分配问题的样本程序 使用MEMWATCH和 Yet AnotherMallocDebugger YAMD 工具来调试它们 在第2种情况中 我们使用了Linux中的s
  • 打造自己的专属--VSCode主题(仿HBuilderX绿柔主题配色)

    打造自己的专属 VSCode主题 theme Hx LR主题 介绍 习惯了HBuilderX的主题 再使用VSCode的主题就感觉到有点儿不适应 所以就搜索 修改 然后就心满意足了 哈哈 当然HBuilderX和VSCode并没有好坏之分
  • Lua使用Vector容器

    一 编写vector pkg class vector TOLUA TEMPLATE BIND T string CCSprite 添加我们想要的容器类型 void clear int size const const T operator
  • C/C++中整数加法/减法的溢出问题

    C C 中的整数类型有short int long等 这些整数类型均为有符号整型 即二进制最高位位符号位 相应的无符号整型只需要在各类型前面加上unsigned 如unsigned int等 现在有如下程序 其输出结果会是多少呢 short
  • 手把手教你使用Python实现推箱子小游戏(附完整源码)

    文章目录 项目介绍 项目规则 项目接口文档 项目实现过程 前置方法编写 move核心方法编写 项目收尾 项目完善 项目整体源码 项目缺陷分析 项目收获与反思 项目介绍 我们这个项目是一个基于Python实现的推箱子小游戏 名叫Sokoban
  • 基于aidlux的ai模型边缘设备模型部署实战(2.使用opencv图像处理)

    1 介绍 在配置好aidlux相关环境之后 玩转相关有趣ai案例demo后 相信你一定想更快了解更多开发应用 本次学习使用notebook开发环境 手写代码 玩转简单opencv函数调用手机摄像头 实现简单功能 2 调用手机摄像头实时图像处
  • Flink 1.17教程:基本合流操作

    基本合流操作 在实际应用中 我们经常会遇到来源不同的多条流 需要将它们的数据进行联合处理 所以Flink中合流的操作会更加普遍 对应的API也更加丰富 联合 Union 最简单的合流操作 就是直接将多条流合在一起 叫作流的 联合 union
  • 树莓派4学习记录(3)-安装tensorflow

    树莓派4学习记录 3 1 安装tensorflow 1 1 获取tensorflow安装文件 1 2 安装tensorflow 2 测试tensorflow 1 安装tensorflow 这里可以参考这个 https blog csdn n
  • sequelize操作数据库-优雅时间格式化

    sequelize操作数据库 优雅时间格式化 sequelize使用版本6
  • 【状态估计】非线性受控动力系统的线性预测器——Koopman模型预测MPC(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码 数据 文章 1 概述 文献来源 本文提出了一类非线性受控
  • 指针初始化与释放问题

    int p free p 操作释放p指向的空间 但是p的值随机 会产生释放未知区域的问题 释放的不是p的空间 而是p指向的空间 p nullptr free P p nullptr 释放后应让p为空 防止再次释放已经释放的空间
  • 测试过程中印象最深刻的bug

    我就想到在我刚入行不久的时候有一个BUG 当时我们做的是一个CRM客户管理系统 里边有个客户列表 当时按照测试用例去执行的时候 发现出现点击客户删除却无法删除 于是就提了一个单 但是开发后来发现删除客户没问题 又给我打回 后来我去查看服务器