在测试和被测试代码之间导航
ReSharper 帮助您在单元测试和被测试代码之间导航。 当您的光标位于类名或其声明中的任意位置时,您可以按 Control+T F 导航到相关测试,反之亦然,通过在测试上按此快捷键,您将跳转到被测试的类。
此导航也可通过 导航到 Control+Shift+G 菜单使用:如果从单元测试导航,请选择 测试主体 ;如果从被测试类导航,请选择 相关测试。
为了在单元测试和被测试代码之间导航,ReSharper 在测试类和相应的被测试类之间建立链接。 There are several approaches to linking tests and tested classes: all of them are used by default, and you can configure them on the page of ReSharper 选项 Alt+R, O :
使用词缀搜索 | ReSharper 将名称以指定前缀或后缀开头或结尾的测试类链接到被测试代码中的相应类。 取消选中此复选框以忽略测试类名称,并使用其他启发式方法进行导航。 |
使用基于特性的搜索 | ReSharper 将带有特定属性注解的测试类链接到被测试代码中的相应类。 ReSharper 始终会考虑来自 JetBrains.Annotations的 [TestSubject]属性。 例如,如果您从名为 如果您使用其他属性注解测试以将其链接到被测试类,请指定此属性的完全限定名称,以便将其与 取消选中此复选框以忽略属性,并使用其他启发式方法进行导航。 |
使用泛型实参搜索 | ReSharper 在基测试类具有表示被测试类的泛型参数且此泛型参数带有特定属性注解时,将测试类与被测试类链接。 请参考以下示例:
[TestFixture]
public abstract class TestsFor<[MeansTestSubject] T>
{
private AutoMock myMock;
public T Component => myMock.Create<T>();
}
public class TestsForSampleClass : TestsFor<SampleClass>
{
[Test]
public void TestSample()
{
Component.DoSomething();
}
}
在此示例中,泛型参数 取消选中此复选框以忽略泛型参数,并使用其他启发式方法进行导航。 |
此功能在以下语言和技术中 受支持:
此处提供的说明和示例针对在 C# 中使用该功能。 有关其他语言的更多信息,请参阅 语言和框架 部分中的相应主题。