我是单元测试的新手,正在寻找一些有关如何命名测试,测试抛出异常的说明。
我决定遵循Roy Osherove中的命名约定:
@Test
void squareRoot_givenNegativeParameter_throwIllegalArgumentException() {
assertThrows(IllegalArgumentException.class, () -> squareRoot(-1));
}
所以我的第一种方法是像这样命名测试:
@Test
void squareRoot_givenNegativeParameter_throwException() {
assertThrows(IllegalArgumentException.class, () -> squareRoot(-1));
}
然后,在查看了有关该主题的一些示例后,我发现其他遵循相同约定的示例,也从未在测试名称中包含实际的异常,即测试看起来像这样:
QPainter
所以我的问题是:我应该遵循哪种风格以及出于什么原因?