使用Osherove的单元测试约定时如何处理方法重命名?

时间:2012-02-14 13:06:50

标签: c# unit-testing refactoring

我喜欢Roy Osherove推荐的单元测试命名约定,单元测试如下所示:

SomeMethod_Scenario_ExpectedResults

对于SomeMethod,通常会有更多的测试方法遵循此约定,问题是如何处理SomeMethod重命名。我完全不喜欢手动完成所有单元测试并逐个重命名的想法。

是否有工具可以帮助解决这个问题?或许这可能是Osherove大会的一个弱点,我应该选择像nested classes approach这样的东西?

2 个答案:

答案 0 :(得分:1)

这有点像一个边缘情况,可能不值得改变测试命名策略。

全局搜索和替换是明显的解决方法。

Resharper的重命名功能也可以选择重命名相关的字符串和注释,但我认为它不会处理方法名称中的子字符串。如果真的对您很重要,那么您可以随时编写自己的VS插件来处理这种情况。

答案 1 :(得分:0)

是的,它被称为“搜索和替换”:)我发现在编写超过2-3个测试后重命名公共方法是非常罕见的。