2011-10-30 57 views
2

我想弄清楚如何在分布式系统中进行代码覆盖测试 - 即一个由多个可执行文件组成的系统,这些可执行文件只能做一些有意义的事情(并且实际上是由另一个启动的)。有没有人处理过类似的问题魔杖你使用了什么工具?如何在分布式系统中进行覆盖测试?

+1

我认为这既不是tdd也不是单元测试。 –

回答

0

您明显可以独立收集每个分布式部件上的测试覆盖率数据。你的第一个问题是分布式部分可能用不同的语言编码(例如,C++和Java),这意味着你需要每种语言的测试覆盖工具。如果您只想独立查看分布式元素的数据,则应该直接模拟管理多个部分的不便。使用每个测试覆盖率工具的测试覆盖率显示来显示其相应片段的覆盖率。

如果问题是“如何收集/查看整个系统的综合测试覆盖率数据”,则需要在运行测试的同时收集各个分布式部件的测试覆盖率数据。 (无论您正在运行单元还是系统测试都无所谓)。

然后,您需要将这些结果合并到整个系统的单个概览中。

许多工具不会结合来自不同程序的测试覆盖率。所以你可能必须自己处理这个问题。如果您的所有分布式代码元素都使用同一种语言,则您的优势是只有一个测试覆盖率数据的表示,但缺点是可能没有很好地记录。通常,这些数据直接由查看者查看,测试覆盖率工具供应商几乎没有理由记录测试覆盖率数据的编码方式。如果人们能够弄清楚这种表现形式,人们通常最终会建立专门的工具来整合这些数据。

如果您有多种语言和多种测试覆盖率工具,那么您可能有多个测试覆盖率表示,如果您可以完成这项工作,则临时解决方案会变得更加困难。

我们的Test Coverage tools具有很好的属性,它们涵盖了各种各样的语言和方言(C,C++,C#,Java,PLSQL,COBOL,PHP,...),它们都使用相同的表示法进行测试覆盖矢量,并且提供的测试覆盖率显示工具将为您组合这些信息(UI可选操作)。没有猜测或广告喧嚣,只是对整套分布式应用程序的完整测试覆盖范围内的所有语言代码(即使在不同的计算机上)的视图。