如果单元测试名称可能会随着时间的推移而过时,如果您认为测试本身是最重要的事情,那么选择明智的测试名称是否很重要?
即
[Test]
public void ShouldValidateUserNameIsLessThan100Characters() {}
诗句
[Test]
public void UserNameTestValidation1() {}
发布于 2008-09-06 14:05:20
任何方法的名称都应该清楚地说明它的作用。
国际海事组织,你的第一个建议有点长,第二个建议信息量不够。此外,在名称中添加"100“可能不是一个好主意,因为这种情况很可能会发生变化。下面是什么:
public void validateUserNameLength()
如果测试发生更改,则应相应地更新名称。
发布于 2008-09-06 16:47:50
是的,名称非常重要,特别是当您在控制台或持续集成服务器中运行测试时。杰伊·菲尔兹写了一个post about it
此外,在one assertion per test中使用好的测试名称,当测试失败时,您的套件将为您提供很好的报告。
发布于 2008-09-06 15:20:33
是。
[Test]
public void UsernameValidator_LessThanLengthLimit_ShouldValidate() {}
将测试对象放在第一位,测试语句放在第二位,预期结果放在最后。
这样,您就可以清楚地了解它在做什么,并且可以很容易地按名称进行排序:)
https://stackoverflow.com/questions/47475
复制相似问题