📜  软件工程 |调试

📅  最后修改于: 2022-05-13 01:57:00.053000             🧑  作者: Mango

软件工程 |调试

介绍:
在软件工程的上下文中,调试是修复软件中的错误的过程。换句话说,它指的是识别、分析和消除错误。此活动在软件无法正确执行后开始,并以解决问题并成功测试软件结束。这被认为是一项极其复杂和乏味的任务,因为在调试的所有阶段都需要解决错误。

调试过程:调试涉及的步骤是:

  • 问题识别和报告准备。
  • 将报告分配给软件工程师以验证缺陷是否真实。
  • 使用建模、文档、查找和测试候选缺陷等进行缺陷分析。
  • 通过对系统进行必要的更改来解决缺陷。
  • 更正的验证。

调试策略:

  1. 研究该系统的时间较长,以了解该系统。它有助于调试器根据需要构建要调试的系统的不同表示。还积极研究系统以发现对软件所做的最新更改。

  2. 问题的后向分析涉及从故障消息的位置向后跟踪程序,以识别故障代码的区域。正在对该地区进行详细研究,以找出缺陷的原因。

  3. 程序的前向分析包括在程序的不同点使用断点或打印语句向前跟踪程序并研究结果。得到错误输出的区域是需要聚焦以找到缺陷的区域。

  4. 使用以往的软件经验,对性质类似问题的软件进行调试。这种方法的成功取决于调试器的专业知识。

调试工具:
调试工具是用于测试和调试其他程序的计算机程序。许多公共领域软件,如 gdb 和 dbx 都可用于调试。它们提供基于控制台的命令行界面。自动化调试工具的示例包括基于代码的跟踪器、分析器、解释器等。
一些广泛使用的调试器是:

  • 雷达2
  • 数据库
  • 瓦尔格林德

调试和测试之间的区别:
调试不同于测试。测试的重点是发现错误、错误等,而调试是在软件中发现错误之后开始的。测试用于确保程序是正确的,并且应该以一定的最低成功率进行。测试可以是手动的或自动的。有几种不同类型的测试,如单元测试、集成测试、alpha 和 beta 测试等。
调试需要大量的知识、技能和专业知识。它可以由一些可用的自动化工具支持,但更多的是手动过程,因为每个错误都是不同的并且需要不同的技术,这与预定义的测试机制不同。