zoukankan      html  css  js  c++  java
  • <读书笔记>软件调试之道 :从大局看调试-理想的调试环境

    声明:本文档的内容主要来源于书籍《软件调试修炼之道》作者Paul Butcher,属于读书笔记。欢迎转载!

    -----------------------------------------------------------------------------------------------------

    自动化测试

        1.有效的自动化测试

    • 明确说明测试结果是否通过
    • 不需要安装、测试后也能够撤销对环境所做的任何修改
    • 单击运行所有的测试
    • 全面覆盖,做到足够解决完全覆盖是可能的

        2. 自动化测试可以作为调试的辅助

    • 经过自动化测试的代码往往只有很少缺陷,容易修复,并且让你自信发布的软件可以正确运行。
    • 可以防止引入回归

        3.模拟测试、桩测试以及其他的代替测试技术

    • 桩测试是被动的,模拟测试是主动的。
    • 试图可靠的重现缺陷时,代替测试时非常有用的

    版本管理系统

    源码控制系统是除了编译器外你能使用的最重要工具了!

    • 稳定性

        通过创建分支,保持主干版本的稳定性

    • 可维护性

        创建分支单独在主干发布版本上进行维护和修复。

    • 控制分支

        分支往往消耗大量的时间、经理,因此要加以控制和合理利用。

    静态分析

    事实证明,很多缺陷可以仅仅通过静态检查源码就可以发现,静态分析可以集成到开发流程中,在代码未运行前就发现问题。

    • 利用好编译器

        现代编译器具备一系列的警告信息,比如keil编译时就会提示很多警告信息,要把警告当错误处理,消除警告。 利用在C程序中,可以利用lint发现缺陷

    • 把静态分析工具和开发工具集成

         lint可以集成到keil中,有专用文档介绍集成方法。

  • 相关阅读:
    Echars折线配置详解
    Echarts中太阳图(Sunburst)的实例
    MongoDB shell 介绍
    js深度克隆对象
    js将有父子关系的数据转换成树形结构数据
    使用Mongoose类库实现简单的增删改查
    MongoDB可视化工具--Robo 3T 使用教程
    go语言之进阶篇并行和并发的区别与go语言并发优势
    go语言之进阶篇拷贝文件案例
    go语言之进阶篇借助bufio实现按行读取内容
  • 原文地址:https://www.cnblogs.com/shuolang/p/5619067.html
Copyright © 2011-2022 走看看