.Net单元测试:出于导航目的,将TestMethods映射到相应的实现方法

.Net单元测试:出于导航目的,将TestMethods映射到相应的实现方法,.net,unit-testing,tdd,.net,Unit Testing,Tdd,在我从事的一个项目中,我们以测试驱动的方式(TDD)开发。我们正在构建不同的抽象层,并分别测试每一层,在适当的情况下,对底层依赖项使用mock 因此,对于目标类中的每个方法,我们通常会有少量简明的单元测试(TestMethods) 我经常发现自己在看一个方法的实现,并希望看到一个测试它的单元测试方法列表。通常我只是在方法名上执行“查找所有用法”,以获得相应单元测试的列表(在解决方案中的所有其他用法中) 我的问题是:有没有元数据可以在TestMethod上使用(比如用于文档的属性或)来指定它实际测

在我从事的一个项目中,我们以测试驱动的方式(TDD)开发。我们正在构建不同的抽象层,并分别测试每一层,在适当的情况下,对底层依赖项使用mock

因此,对于目标类中的每个方法,我们通常会有少量简明的单元测试(TestMethods)

我经常发现自己在看一个方法的实现,并希望看到一个测试它的单元测试方法列表。通常我只是在方法名上执行“查找所有用法”,以获得相应单元测试的列表(在解决方案中的所有其他用法中)

我的问题是:有没有元数据可以在TestMethod上使用(比如用于文档的属性或
)来指定它实际测试的方法?更进一步:如果我在实现中,那么我可以快速导航到这些测试吗

对我来说,好处完全在于生产力/导航。(编辑):考虑到我下面的第一条评论,有人可能会认为这样的元数据可以鼓励良好的测试设计和实现


我们正在使用Visual Studio 2012和Resharper 7

我认为这样的元数据会给测试和实现之间带来错误的内聚感。如果测试通过调用其他方法间接地使用这些方法,而这些方法反过来又调用您正在查看的方法,那么该怎么办?或者是那些根本没有直接测试但被其他间接测试覆盖的方法?谢谢David。关于内聚性:我的论点是,这种元数据将被解释为“这是对该方法的测试”。在我看来,单元测试方法和实现方法之间的这种内聚是很自然的。关于你的其他评论:我认为这样的元数据会1)鼓励设计良好的测试,其中每个测试方法都能简洁地完成自己的任务,而不需要调用其他测试层,2)鼓励设计良好的实现……如果我有一个没有直接测试的方法,那么我可能有未测试的功能,或者我的上层测试太复杂。