`

在遗留系统中添加测试

阅读更多

处理遗留系统,感觉有很多问题需要处理。比如来说,不友好的代码等。上周遇到一个问题是这样的。其他同事做了一个新的功能点,然后测试也过了。所以就提交上去。这看起来很正常(如果你也做敏捷,你可能会认为这不正常)。但是问题来了,他的这次修改,对页面的其他地方造成了影响。

比如说,这个新的功能点是要对某个显示做隐藏。他已经实现了,但是呢,当操作某一步的时候,这个内容依旧是隐藏的。导致另外一个功能块,不能work了。好奇葩的问题。虽然后来,我用git找到了问题出在了哪里。但是这样的问题,很可能会出现在以后的工作中。那怎么改善他呢。下面我从openhouse上拿到的一个解决方案。

是这样子的:加入我对某一块进行了调整,无论是增删改都好。既然是遗留系统,那么他遗留代码中却没有测试代码。我们要做的是给他添加代码,不过这里的添加不是一下子全部添加上,而是进行部分添加。也就是对这一块的上一层添加测试点就可以。这样,一点点的添加,一点点的重构,便会改善遗留系统存在的一些问题,而且在添加修改新功能的时候减小出错的概率。

另外要说的是,这样可能会让我们话很多时间在测试上,其实想想也是值得的,当后来再修改这样的代码时,看下测试就可以很快的找找问题的根源。

分享到:
评论

相关推荐

    iOS遗留系统上的架构重构 李剑.pdf

    遗留系统通常指的是那些早期开发且在后期维护中不断添加新功能,但未进行适时结构性更新的系统。这类系统由于历史遗留问题,往往会存在代码复杂、耦合度高、难以扩展及维护困难等问题,因此重构的需求就显得尤为迫切...

    xx系统v1.0测试报告

    在测试过程中,系统经历了多个迭代版本,每个版本都有详细的变更记录,以追踪问题的修复和新功能的添加。 3.3 阶段划分 测试活动分为单元测试、集成测试、系统测试和验收测试四个阶段,确保对系统各层面进行全面...

    1本关于遗留代码改进的书。

    此外,书中还介绍了继承模式、零对象模式、依赖倒置原则等设计模式,以及它们在遗留系统改进中的应用。 在继承和接口的讨论中,费瑟斯提出了一种在不改变原有代码的情况下逐步添加接口的方法,并讨论了如何通过增加...

    如何在ubuntu10.04的2.6.35.13内核中添加一个新的系统调用

    ### 如何在Ubuntu 10.04的2.6.35.13内核中添加一个新的系统调用 #### 知识点一:理解系统调用与内核编译 **系统调用**是应用程序与操作系统内核之间进行交互的一种方式,允许用户空间的程序请求操作系统的服务。在...

    java 遗留问题

    【标题】:“Java遗留问题”通常指的是在长期的软件开发过程中积累下来的问题,这些问题可能源自设计决策、编码习惯、技术债务或对新功能的不适应等。这些遗留问题可能会影响代码质量、系统性能以及维护成本。 ...

    测试技术及方法分类

    8. 端到端测试:模拟实际用户操作场景,从开始到结束验证整个流程,确保系统在整个工作流中的正确性。 9. 健全测试:在大规模测试前,先验证软件是否具备进行后续测试的基本条件,避免因严重问题导致测试无法进行。...

    压力测试报告-Monkey - 模板.docx

    - 整机测试-含触控事件: 添加触控事件到测试中,更贴近实际用户操作。 - 跑白名单测试: 只模拟白名单中指定的事件,确保关键功能的稳定性。 - 跑黑名单测试: 避免黑名单中的事件,防止引发已知问题。 4. 测试结果 ...

    Linux下添加简单自定义系统调用.pdf

    此外,还需要确保新添加的系统调用已经包含在内核中,并通过编写测试代码来验证系统调用的功能是否正常。 在整个过程中,需要注意的是,所有涉及到的命令操作都应该在具有root权限的用户下执行,以确保操作的权限...

    重构遗留代码,浮现架构之道-2013.04.02.pdf

    - **实施**:对于遗留代码,首先应该为其添加单元测试。这不仅可以帮助理解代码的功能,还能确保重构过程中不会破坏现有功能。 **2. 设计模式的应用** - **定义**:设计模式是解决常见软件设计问题的有效方法。...

    测试人员容易遗漏一些隐藏的缺陷

    其次,配置文件的安全性也是测试中容易被忽略的部分。配置文件通常存储了软件运行所需的参数信息,有时也包括一些敏感数据,比如管理员密码。如果配置文件的安全性没有得到确保,那么明文存储的密码等敏感信息可能会...

    SE8-软件进化2

    在遗留系统中进行变更尤其复杂,因为需要考虑系统原有结构、隐藏的业务规则和可能产生的连锁反应。 3. **软件维护**:维护是软件生命周期中的重要阶段,涉及修复错误、添加新功能、优化性能等。对于遗留系统,维护...

    使用Cobertura统计单元测试覆盖率

    在软件开发过程中,单元测试是确保代码质量的重要环节。它能够帮助我们发现潜在的错误,提高代码的可维护性。然而,仅仅编写单元测试是不够的,我们还需要知道这些测试覆盖了代码的哪些部分,这就是单元测试覆盖率的...

    SAP_STMS_传输系统配置

    - 添加系统至传输域:分别在DEV、QAS和PRD系统中进行操作,将它们加入到新的传输域中,并等待域控制器的修改。 - 定义传输路径:使用图形编辑器或树状编辑器来定义传输路径,建立SAP Transport Layers,并在STMS中...

    参考资料-11 周边收敛测试记录表.zip

    在IT行业中,周边收敛测试是一种重要的软件质量保证活动,它主要关注系统边界条件的测试,以确保软件在与外部环境交互时能正确、稳定地工作。"参考资料-11 周边收敛测试记录表.zip"这个压缩包文件提供了一份详细的...

    vc动态库 添加

    1. **配置环境变量**:首先,确保将OpenCV的动态库目录(bin目录)添加到系统的PATH环境变量中,这样可以在运行时自动找到所需的DLL文件。 2. **添加库依赖**:在VC++项目属性中,选择“配置属性”>“链接器”>...

    14种测试类型

    回归测试是在对软件进行了修改或添加新功能后,重新运行之前通过的测试用例,以确认这些更改没有引入新的缺陷或破坏现有功能。这有助于保持软件的稳定性和可靠性。 ### 8. 配置测试(Configuration Testing) 配置...

    WindowsServer2003部署IIS服务-软件测试环境搭建

    由于其稳定性和对早期技术的良好支持,Windows Server 2003在一些遗留系统和测试环境中仍然占据一席之地。接下来,我们将详细探讨如何在Windows Server 2003上部署IIS服务,并搭建软件测试环境。 首先,部署IIS服务...

    lidando-com-legado:介绍处理遗留系统和代码的方法

    在IT行业中,遗留系统和代码是许多开发团队面临的重要挑战。这些系统往往承载着关键业务逻辑,但在技术架构、设计模式或编程语言方面可能已经过时。本文将深入探讨处理遗留系统和代码的方法,主要关注JavaScript环境...

    测试报告模板

    - **较严重问题小结**:列举在测试过程中发现的严重影响系统功能或性能的问题,每个问题应简洁明了地描述,并可能包含错误编号、复现步骤和影响范围。 - **备注**:补充其他未涵盖的信息,例如某些功能未进行测试...

    Win8添加虚拟网卡方法.docx

    Win8 系统添加虚拟网卡的操作和 Win7 不太一样,很多朋友不知道如何操作。今天我们就来教大家怎么在 Win8 中创建虚拟网卡。 首先,让我们了解什么是虚拟网卡。虚拟网卡是指在计算机上创建的虚拟网络接口,它可以...

Global site tag (gtag.js) - Google Analytics