代码之家  ›  专栏  ›  技术社区  ›  Konrad

软件测试时清理房间

  •  3
  • Konrad  · 技术社区  · 15 年前

    我想在使用我没有代码的其他库时,准确地检查我的代码是如何操作的。虽然我可以在线(即通过SysInternals中的filemon、regmon和tcpview)执行此操作,但我想知道是否有一个好的离线方法可以让我在虚拟机中运行代码、关闭虚拟机并对整个虚拟机映像进行差异化?

    2 回复  |  直到 15 年前
        1
  •  5
  •   slurdge    15 年前

    由于对系统的持久修改要么在注册表中的文件系统中,所以您可以使用一个小程序列出硬盘上的所有文件并转储注册表。
    然后,您还可以在程序操作之后执行此操作,并执行一个简单的文件diff。 如果您使用的是virtualbox,我认为您可以离线安装磁盘映像(即虚拟机不运行)。但是,从脱机文件转储注册表可能比较困难。 请参见谷歌上的“mount vdi”。

        2
  •  5
  •   djna    15 年前

    所有集成测试都将使用您没有源代码、框架库、数据库驱动程序、数据库、comms库的代码。其中一些甚至可能不在您的代码所在的机器上。我不清楚你到底希望达到什么目标。你给排队系统打几个电话,它会做各种各样的秘密松鼠的事情。你前后不一样,现在你能说什么?你知道应该有什么数据格式来代表你的请求吗?

    我认为测试是根据我所使用的库和系统的公开行为来定义的。数据库示例:我执行了一些应该创建订单的业务操作。我知道我定义的顺序,它们出现在数据库中吗?在定义测试时,我可以用数据库中的记录来说明预期结果。然后我甚至可以自动化测试——将数据库中的摘录与预期结果进行比较。