在C#中调试大型程序

时间:2011-12-01 16:52:39

标签: c# debugging

我有一个用C#编写的大程序,需要大约20分钟才能完成。该计划分为多个阶段,信息流是连续的。如果我的程序在说完第2步后失败了,我必须从头开始重新运行它。在某些内存中对象/服务等的每个步骤之后是否有更智能的方法来保存信息,可以直接用于运行第3步。这不是一个很好的描述,但我需要在最后调试程序,但为此我必须每次从头开始重新运行它。这种情况有没有工业实践?

由于 希夫

4 个答案:

答案 0 :(得分:6)

如何在步骤之间流动数据?如果数据流被很好地定义(最好是一个通道)。你可以实现一个“记录”和“播放”模块。这将知道接收到记录到文件(通过序列化)在一端获得的数据并在另一端播放它。如果它没有从输入连接,它将播放文件或类似的东西。然后将播放器连接到阶段2的输出一次。并在调试时直接将其播放到第3步

答案 1 :(得分:2)

  1. 单元测试
  2. 模拟对象
  3. 内存数据库

答案 2 :(得分:2)

学习现代编程实践。特别是:

  • 自动化测试
  • 单元测试。

后者允许您测试各个部分,并且应该与称为“持续集成”的东西一起完成。第一个允许您自动运行这些测试。

答案 3 :(得分:0)

http://en.wikipedia.org/wiki/Unit_testing将是我处理大型调试情况的方法。写下一些测试用例和值等等。需要一段时间,但会阻止一遍又一遍地跑。

相关问题