2010-06-16 101 views
2

我正在将一些C++程序集移植到执行各种波形解调的VB中。我决定走单元测试路线,而不是构建测试应用程序,以了解如何执行测试。原始的解调代码接受一个数组,该数组是波形以及其他一些参数。应该如何对一个以数组为参数的东西进行测试?在文件中生成假数据并在测试开始时读取它可以接受吗?使用数组作为参数的单元测试方法

附注 - 原始C++代码的编写是因为我们正在执行数学,而我们在VB6中无法做到这一点,所以我们必须跨越C++和VB6之间的界限并使用数组。处理.NET世界中的大量数据是否有“更好”的方式,我们VB6程序员可能还不知道?或者如果我们没有跨过那个管理/未管理的边界,我们应该将数据表示为对象吗?

谢谢大家!

+0

关于你的第二个问题:.NET能够处理大量的数据。你应该使用最易维护的设计,并在性能不够好时尝试调整它。如果您遇到困难,您可以在此再次提问并显示代码并解释背景。祝你好运。 – Steven 2010-06-16 11:43:08

回答

1

取决于测试数组的大小。如果他们不是那么大,我宁愿让他们在代码中 - 这种方式单元测试是自我包含的,没有依赖于外部资源。

但是,如果数组很大,它可以存储在假数据文件中。或者,如果生成不是非常复杂或耗时,它甚至可以即时生成。

即使您决定重构您的API,我也建议先为当前API编写单元测试。一旦你有了测试,你可以更安全地进行重构。

0

第一件事是摆脱阵列。你在你的问题中说过,数组唯一的原因是用于C++的接口。现在你的代码是vb.net,所以清理那个接口。您最初可能会使用包装数组的东西开始:class WaveForm {}隐藏代表性细节。

相关问题