MSTest не может обнаружить унаследованный TestMethod в дочернем классе - PullRequest
0 голосов
/ 29 января 2019


Я использую Visual Studio 2015,
Моя проблема в том, что MSTest не может обнаружить TestMethods, которые уже определены в базовом классе, когда я нажимаю «Выполнить тесты» в vs, только тест, который определенв дочернем классе выполняются.

example

[TestClass]
public class A 
{
  [TestMethod]
  public void Test1(){....}
}

[TestClass]
public class B : A
{
  [TestMethod]
  // MsTest only discover this method to execute!
  public void Test2(){....}
}

Я хочу, чтобы оба метода выполнялись, когда я нажимаю «Выполнить тесты», когда я в классе B, как решить эту проблему?Спасибо

1 Ответ

0 голосов
/ 29 января 2019

Вы можете пометить его как виртуальный, а затем переопределить и повторно передать атрибут TestMethod в переопределении, а также вызвать метод до базовой реализации.

[TestClass]
public class A 
{
  [TestMethod]
  public virtual void Test1(){....}
}

[TestClass]
public class B : A
{
  [TestMethod]
  public override void Test1()
  {
    base.Test1();
  }

  [TestMethod]
  public void Test2(){....}
}
...