背景

一个版本从开始开发到上线,可能经历10多天,甚至更

由于这个过程的时间较长,难免出现某些需要执行的SQL脚本、需要配置的配置项,到了上线前,却被遗漏了,最后导致出现线上问题才发现。

我们团队也出这种情况发生,我们想了个比较笨的办法,虽然笨,但终究还是有些作用。

开发人员提测前登记「除代码外的改动项」,由测试人员执行「除代码外的改动项」

之前:

  1. 开发人员开发完毕
  2. 开发人员完成好测试环境的所有配置,准备完善测试环境
  3. 请测试人员直接进入测试

现在:

  1. 开发人员完成代码开发,在开发过程中用「我们约定的文档」登记「除代码外的改动项」
  2. 提测前,请测试人员执行「除代码外的改动项」(这个动作有两个目的:1、避免开发人员直接执行配置,然后上线却遗漏了;2、「除代码外的改动项」通过测试人员执行,也属于验证「除代码外的改动项」有效性的一部分;)
  3. 然后,开发人员在测试环境对特性进行验证
  4. 提测给测试人员

「除代码外的改动项」一般有哪些?

  • SQL脚本,比如建表语句、添加字段语句、初始化数据语句(注意:如果是SQL,使用Flyway也可帮助我们避免遗漏脚本)
  • 配置中心的配置项,比如添加、修改、删除配置
  • 申请某些权限,比如调用某个第三方服务,而该第三方服务调用前需进行权限申请,申请的一系列都需要记录下来
  • 五八花门

我们运行中遇到的问题?

提测后,「除代码外的改动项」出现变更,会需要额外的沟通成本

比如:提测时,我登记了一条SQL,需要给T_USER表添加一个INT类型的字段AGE:

ALTER TABLE T_USER ADD COLUMN AGE INT;

提测后,测试人员测出若干个Bug,为了修复这些Bug,我需要将AGE这个字段修改为DATE类型的字段BIRTHDAY:

ALTER TABLE T_USER DROP COLUMN AGE;
ALTER TABLE T_USER ADD COLUMN BIRTHDAY DATE;

上述这些执行的过程,因为需要测试人员理解并执行,所以需要花一些沟通成本使其知悉。

【效能提升】上线前漏了SQL脚本,漏加上某个配置项了?的更多相关文章

  1. 人力节省 50%,研发效能提升 40%,阿里 Serverless 架构落地实践

    作者 | 万佳 嘉宾 | 杨皓然(不瞋) 导读:云的下一波浪潮是什么?杨皓然称"是 Serverless".作为一名阿里老兵,他早在 2010 年即加入阿里云,曾深度参与阿里云飞天 ...

  2. 【ORACLE】记录通过执行Oracle的执行计划查询SQL脚本中的效率问题

    记录通过执行Oracle的执行计划查询SQL脚本中的效率问题   问题现象: STARiBOSS5.8.1R2版本中,河北对帐JOB执行时,无法生成发票对帐文件.   首先,Quartz表达式培植的启 ...

  3. 十倍效能提升——Web 基础研发体系的建立

    1 导读 web 基础研发体系指的是, web 研发中一线工程师所直接操作的技术.工具,以及所属组织架构的总和.在过去提升企业研发效能的讨论中,围绕的主题基本都是——”通过云计算.云存储等方式将底层核 ...

  4. mssql sqlserver 使用sql脚本检测数据表中一列数据是否连续的方法分享

    原文地址:http://www.maomao365.com/?p=7335 摘要:    数据表中,有一列是自动流水号,由于各种操作异常原因(或者插入失败),此列数据会变的不连续,下文将讲述使用sql ...

  5. mysql 批处理命令执行多个sql脚本

    方法1 若有SQL脚本a.sql, b.sql, 其目录在f盘根目录下, 则可再写一个SQL脚本c.sql(假设其目录也在f盘根目录下, 也可以在其他路径下)如下: source f:/a.sql; ...

  6. 分享泛微公司OA系统用于二次开发的sql脚本

    本单位用的oa系统就是泛微公司的oa协同办公平台,下面是我对他进行二次开发统计用到的写数据库脚本,只做开发参考使用,对于该系统的二次开发技术交流可以加我q:2050372586 [仪表盘]格式sql编 ...

  7. Excel数据转化为sql脚本

    在实际项目开发中,有时会遇到客户让我们把大量Excel数据导入数据库的情况.这时我们就可以通过将Excel数据转化为sql脚本来批量导入数据库. 1 在数据前插入一列单元格,用来拼写sql语句. 具体 ...

  8. [转]Excel数据转化为sql脚本

    在实际项目开发中,有时会遇到客户让我们把大量Excel数据导入数据库的情况.这时我们就可以通过将Excel数据转化为sql脚本来批量导入数据库. 1 在数据前插入一列单元格,用来拼写sql语句. 具体 ...

  9. PowerDesign16.6支持Mysql的生成sql脚本中包含Collate信息

    当前powerDesign版本:16.6 列上指定:Collation = utf8_general_ci 但是SQL脚本中,列字段没有显示Collect ---------------------- ...

  10. 设置SQL脚本大小敏感

    1.设置SQL脚本大小写不敏感 USE [master]  GO  ALTER DATABASE [DatabaseName] COLLATE Chinese_PRC_CI_AI  GO 2.设置大S ...

随机推荐

  1. C#日期类型转化总结【转化,农历,节气,星期】

    转为日期类型 将8位日期字符串转换为日期格式 dateStr = "20220203"; System.IFormatProvider format=new System.Glob ...

  2. Mysql之innodb引擎

    优势总结 只有数据库引擎为innodb且事务的隔离级别repeatable--read (可重复读)的时候 才会使用mvcc来实现多版本控制 事务中的可重复读可以有效的避免幻读问题 innodb从硬盘 ...

  3. openEuler欧拉设置git pull免密

    使用git config命令在本地全局设置用户名和邮箱 git config --global user.name "username":全局添加用户名 git config -- ...

  4. [.NET Blog] .NET Aspire 测试入门

    https://devblogs.microsoft.com/dotnet/getting-started-with-testing-and-dotnet-aspire/ 自动化测试是软件开发的重要一 ...

  5. C# 7.0 新特性:模式匹配 ( pattern matching)

    C# 7.0 新特性:模式匹配 ( pattern matching ) 在 C# 中,is 是一个关键字,可以用来检查某个数据的类型是否为特定类型.这是一个表达式,返回类型为 boolean. 例如 ...

  6. Qt/C++音视频开发59-使用mdk-sdk组件/原qtav作者力作/性能凶残/超级跨平台

    一.前言 最近一个月一直在研究mdk-sdk音视频组件,这个组件是原qtav作者的最新力作,提供了各种各样的示例demo,不仅限于支持C++,其他各种比如java/flutter/web/androi ...

  7. Qt开源作品35-秘钥生成器

    一.前言 在很多商业软件中,需要提供一些可以试运行的版本,这样就需要配套密钥机制来控制,纵观大部分的试用版软件,基本上采用以下几种机制来控制. 远程联网激活,每次启动都联网查看使用时间等,这种方法最完 ...

  8. Qt编写安防视频监控系统31-onvif设备搜索

    一.前言 做视频监控系统,绕不过onvif这玩意,这玩意主要就是为了统一一个大概的标准,能够对各个厂家的监控设备进行常用的一些操作,比如搜索.获取信息.云台控制.事件订阅.抓拍图片等,如果没有这个规范 ...

  9. 从新手到专家:如何设计一套亿级消息量的分布式IM系统

    本文原作者Chank,原题"如何设计一个亿级消息量的 IM 系统",为了提升内容质量,本次有修订和改动. 1.写有前面 本文将在亿级消息量.分布式IM系统这个技术前提下,分析和总结 ...

  10. HP 打印机驱动

    HP Universal Print Driver Series for Windows https://support.hp.com/cn-zh/drivers/selfservice/hp-uni ...