如何在系统级别使用 VUnit

how to use VUnit on a system level

我有一个包含多个结构实体的项目,每个结构实体都有子实体,如下图所示。

现在我正在尝试为测试阶段做计划。我检查了 UVVM、OSVVM 和 VUnit,我发现 VUnit 是最简单和最快的启动方式。

我已经阅读了文档并尝试了一些提供的示例,我开始为一些子实体(如 A1、A2、...等)编写一些测试

我的问题是如何使用 VUnit 在系统级别进行测试以及我应该如何构建我的测试平台?

这类问题可能会因基于意见而被关闭,因此我将给出一些一般性评论,以指导您做出决定。

  1. VUnit 不关心你正在测试的东西的大小。它可以是一个小功能或一个非常大的系统。基本测试策略不是工具问题,而是您可以自由决定的东西。
  2. 无论测试理念如何,我认为大多数(如果不是全部)开发人员都同意 better/cheaper 尽早发现错误而不是晚发现错误。这意味着您应该经常测试并从小事着手。多频繁和多小取决于测试开销和错误频率,这取决于所使用的工具、设计人员的经验、问题的复杂性等。这里没有普遍真实的数字。
  3. 事务是一种编码抽象,可以提高代码的可读性和可维护性。然而,对一个简单的问题使用过多的抽象没有任何价值。如果你正在测试的东西只有一个简单的总线接口,那么创建一个接一个调用的简单的读写过程是有意义的。如果您有多个接口并希望在这些接口上执行并发事务,则您需要更多。 VUnit 解决方案是采用简单的事务过程并在其上添加消息传递。 https://www.linkedin.com/pulse/vunit-bfms-simple-emailing-lars-asplund/ 解释它是如何完成的
  4. 我不确定我是否理解你的最后一个问题,但如果你只想从顶层测试小东西,你需要在测试开始之前开发顶层。那将与第 2 点背道而驰。

免责声明:我是 VUnit 的作者之一,但我认为我设法避免了个人意见。