.NET Core - Utwórz projekt testowy
W tym rozdziale omówimy sposób tworzenia projektu testowego przy użyciu platformy .NET Core. Testowanie jednostkowe to proces tworzenia oprogramowania, które ma najmniejsze testowalne części aplikacji, zwane jednostkami. Są oni indywidualnie i niezależnie sprawdzani pod kątem prawidłowego działania. Testowanie jednostkowe może być zautomatyzowane lub wykonane ręcznie.
Otwórzmy teraz okno dialogowe Nowy projekt i wybierzmy Visual C# → .NET Core szablon.
W tym oknie dialogowym widać, że nie ma szablonu projektu do testowania jednostkowego. Aby utworzyć projekt testu jednostkowego, powinniśmy użyć narzędzia wiersza poleceń. Przejdźmy do utworzonego przez nas folderu Solution; utwórz folder testowy, a wewnątrz folderu test utwórz inny folder i nadaj mu nazwęStringLibraryTests.
Użyjmy teraz narzędzia wiersza poleceń dotnet, aby utworzyć nowy projekt testowy, wykonując następujące polecenie -
dotnet new -t xunittest
Możesz teraz zobaczyć, że tworzony jest nowy projekt C #; zajrzyjmy do folderu, wykonując plikv polecenie, a zobaczysz project.json i Tests.cs pliki, jak pokazano poniżej.
Oto kod w pliku project.json.
{
"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"
]
}
}
}
Poniżej znajduje się kod w pliku Test.cs.
using System;
using Xunit;
namespace Tests {
public class Tests {
[Fact]
public void Test1() {
Assert.True(true);
}
}
}
Aby pobrać niezbędne zależności z NuGet, wykonajmy następujące polecenie -
dotnet restore
Test możemy uruchomić po przywróceniu niezbędnych zależności.
Widać, że kompilacja się powiodła; gdy zejdziesz na dół, możesz zobaczyć informacje o wykonanym teście.
Obecnie mamy 1 test wykonany, 0 błędów, 0 nieudanych, 0 pominiętych, a czas potrzebny na wykonanie jest również wymieniony jako informacja.