.NET Core - uruchamianie testów w programie Visual Studio

W tym rozdziale omówimy sposób uruchamiania testów w programie Visual Studio. NET Core został zaprojektowany z myślą o testowalności, dzięki czemu tworzenie testów jednostkowych dla aplikacji jest łatwiejsze niż kiedykolwiek wcześniej. W tym rozdziale uruchomimy i wykonamy nasz projekt testowy w Visual Studio.

Otwórzmy rozwiązanie FirstApp w programie Visual Studio.

Widzisz, że ma tylko dwa projekty i nie będziesz mógł zobaczyć projektu testowego, ponieważ nie dodaliśmy tego projektu w naszym rozwiązaniu.

Najpierw dodajmy folder i nazwijmy go test.

Kliknij prawym przyciskiem myszy plik test teczka.

Wybierz project.json plik i kliknij Open.

Poniższy zrzut ekranu przedstawia kod w Tests.cs plik jako wyjście.

Jest to domyślna implementacja i po prostu sprawdza, czy wartość True jest równa prawdzie. Jest to platforma testowa xUnit, a zobaczysz atrybut Fact, który zawiera adnotacje i oznacza metodę testową.

using System; 
using Xunit; 
  
namespace Tests { 
   public class Tests { 
      [Fact] 
      public void Test1() { 
         Assert.True(true); 
      } 
   } 
}

Poniżej znajduje się implementacja project.json plik.

{ 
   "version": "1.0.0-*", 
   "buildOptions": { 
      "debugType": "portable" 
   }, 
   "dependencies": { 
      "System.Runtime.Serialization.Primitives": "4.1.1", 
      "xunit": "2.1.0", 
      "dotnet-test-xunit": "1.0.0-rc2-192208-24" 
   }, 
   "testRunner": "xunit", 
   "frameworks": { 
      "netcoreapp1.0": { 
         "dependencies": { 
            "Microsoft.NETCore.App": { 
               "type": "platform", 
               "version": "1.0.1" 
            }
         }, 
         "imports": [ 
            "dotnet5.4", 
            "portable-net451+win8" 
         ] 
      } 
   } 
}

W project.jsonplik, najważniejszą zależnością od frameworka testowego jest xunit, który wprowadza atrybut Fact. Wprowadza ramy testowe i interfejsy API do testowania z xunit.

Mamy również dotnet-test-xunit, to jest program adoptujący, dzięki czemu xunit może współpracować z .NET Core, w szczególności z dotnet testnarzędzie wiersza poleceń. Wtedy zobaczysztestRunner który będzie uruchamiał xunit, a także możesz zobaczyć plik netcoreapp1.0 struktura.

Zobaczysz zależność .NETCore.App poniżej.

Aby uruchomić test w programie Visual Studio, otwórzmy Eksploratora testów z poziomu Test → Window → Test Explorer opcja menu.

I widać, że program Visual Studio automatycznie wykrywa test. Nazwa testu składa się znamespace.className.TestMethodName. Kliknijmy terazRun All button in Test Explorer.

Najpierw zbuduje kod i uruchomi test, a zobaczysz całkowity czas potrzebny na test. Zmieńmy metodę testową, abyśmy mogli zobaczyć wynik, gdy test się nie powiedzie.

using System; 
using Xunit; 
  
namespace Tests { 
   public class Tests { 
      [Fact] 
      public void Test1() { 
         Assert.True(false); 
      } 
   } 
}

Wykonajmy test ponownie, klikając plik Run All link do przycisku.

Możesz teraz zobaczyć test niepowodzenie.