6
按需求或方法划分单元测试
首先,对标题表示歉意,我想不出最简单的解释方法! 我有一个要为其编写单元测试的方法。我将使其保持相当通用,因为我不想讨论该方法的实现,而只是讨论它的测试。方法是: public void HandleItem(item a) { CreateNewItem(); UpdateStatusOnPreviousItem(); SetNextRunDate(); } 因此,此类有一个公共方法,然后调用一些私有方法来执行逻辑。 因此,在编写单元测试时,我想检查所有三件事。因为它们都在同一运行中被调用,所以我认为我可以将其作为一项测试: public void GivenItem_WhenRun_Thenxxxxx { HandleItem(item); // Assert item has been created // Assert status has been set on the previous item // Assert run date has been set } 但我认为我也可以将其编写为三个单独的测试: public void GivenItem_WhenRun_ThenItemIsCreated() { HandleItem(item); } public …
16
c#
unit-testing