English | 日本語 | 简体中文 | 繁體中文 |
---|
有没有觉得命名太难?有没有觉得单元测试的命名更难?没错,你不是一个人!看看这个你就知道了:程序员最头疼的事:命名 或它的英文原文 Don’t go into programming if you don’t have a good thesaurus - ITworld。
MSTestEnhancer 的出现将解决令你头疼的单元测试命名问题——因为,你再也不需要为任何单元测试方法命名了!
MSTestEnhancer 是 MSTest v2 的一个扩展。使用它,你可以用契约的方式来描述一个又一个的测试用例,这些测试用例将在单元测试运行结束后显示到单元测试控制台或 GUI 窗口中。全过程你完全不需要为任何单元测试方法进行命名——你关注的,是测试用例本身。
现在,你的单元测试可以这样写了:
[TestClass]
public class DemoTest
{
[ContractTestCase]
public void Foo()
{
"当满足 A 条件时,应该发生 A' 事。".Test(() =>
{
// Arrange
// Action
// Assert
});
"当满足 B 条件时,应该发生 B' 事。".Test(() =>
{
// Arrange
// Action
// Assert
});
}
}
于是,运行单元测试将看到这样的结果视图:
// 编写中……
// 编写中……
// 编写中……