使用Arrange-Act-Assert进行单元测试时,是否建议使用标题注释?

时间:2014-09-06 06:36:05

标签: c# unit-testing arrange-act-assert

我发现按照AAA模式中的建议对单元测试语句进行分区的概念很有用。

我倾向于添加标题注释,以便测试看起来像这样:

// Arrange
int a = 1;
int b = 2;

// Act
int c = a + b;

// Assert
Assert.AreEqual(3, c);

但我很好奇,总是包含这些标题评论是否正常?

......或者这是我应该避免的事情吗?

int a = 1;
int b = 2;

int c = a + b;

Assert.AreEqual(3, c);

2 个答案:

答案 0 :(得分:6)

一旦理解了基本前提,这似乎并没有增加太多价值。既然你提到了C#,我建议你看一下The Art of Unit Testing的例子。正确地命名单元测试比在其中安排/执行/断言注释更重要。正如本书指出的那样,当测试失败时,如果它被命名为好,你通常可以直接推断出回归的原因,如果你知道最近做了哪些改变。

答案 1 :(得分:0)

我从中获得了很多价值。 (对我而言)看起来更干净,可以立即清楚测试的哪些部分正在执行操作,并且它在一定程度上增强了模式。所以不,我认为您无需避免这种情况。

如果您的测试变得非常复杂,那就是另外一个问题。即使是六行测试也可以从这些注释中受益。如果由于正在检查是否引发了异常而没有断言部分,则显然不要包含assert注释。

我总是很感激那些代码正在审核中。我觉得这可以节省我的时间。