Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule przedstawiono koncepcję testowania i pokazano, jak różne rodzaje testów mogą służyć do weryfikowania kodu. Dostępne są różne narzędzia do testowania aplikacji .NET, takich jak .NET interfejs wiersza polecenia lub Integrated Development Environments (IDE).
Typy testów
Testy automatyczne to doskonały sposób na upewnienie się, że kod aplikacji robi to, co zamierzają jej autorzy. W tym artykule opisano testy jednostkowe, testy integracji i testy obciążeniowe.
Testy jednostkowe
Test jednostkowy to test, który sprawdza poszczególne składniki lub metody oprogramowania, znane również jako "jednostki". Testy jednostkowe powinny testować tylko kod będący pod kontrolą dewelopera. Nie testują problemów z infrastrukturą. Kwestie dotyczące infrastruktury obejmują interakcję z bazami danych, systemami plików i zasobami sieciowymi.
Aby uzyskać więcej informacji na temat tworzenia testów jednostkowych, zobacz Testing tools.
Testy integracji
Test integracji różni się od testu jednostkowego tym, że testuje zdolność do współpracy dwóch lub więcej składników oprogramowania, co jest również nazywane ich "integracją". Testy te działają na szerszym spektrum systemu poddanego testowi, podczas gdy testy jednostkowe koncentrują się na poszczególnych składnikach. Często testy integracji obejmują problemy z infrastrukturą.
Testy obciążeniowe
Test obciążeniowy ma na celu określenie, czy system jest w stanie obsłużyć określone obciążenie. Na przykład liczba równoczesnych użytkowników korzystających z aplikacji i możliwość dynamicznego obsługiwania interakcji. Aby uzyskać więcej informacji na temat testowania obciążenia aplikacji internetowych, zobacz ASP.NET Core load/stress testing.
Zagadnienia dotyczące testowania
Należy pamiętać, że istnieją najlepsze rozwiązania do pisania testów. Na przykład Test Driven Development (TDD) jest to pisanie testu jednostkowego przed kodem, który ma sprawdzić dany kod. TDD jest jak tworzenie konspektu dla książki przed jej napisaniem. Test jednostkowy ułatwia deweloperom pisanie prostszego, czytelnego i wydajnego kodu.
Narzędzia do testowania
Podczas uruchamiania testów w .NET istnieją dwa składniki: platforma testowa i framework testowy.
Platformy testowe
Platforma testowa to aparat, który uruchamia testy i komunikuje się z narzędziami, takimi jak środowiska IDE i interfejs wiersza polecenia.
Zapoznaj się z omówieniem platform testowych , aby zrozumieć różnice między narzędziami VSTest i Microsoft.Testing.Platform i wybrać najlepszą platformę dla danego scenariusza.
Aby uzyskać wskazówki dotyczące migracji, zobacz Migrowanie z programu VSTest do microsoft.Testing.Platform.
Struktury testowe
Ramy testowe są zbudowane na platformie testowej. Definiuje zestaw atrybutów i interfejsów API, które są dostępne dla Ciebie jako autor testów. Zwykle jest zasilany przez adapter testowy, który działa jako warstwa komunikacji między frameworkiem testowym a platformą testową. Popularne struktury testów to MSTest, NUnit, TUnit i xUnit.net.
MSTest
MSTest to platforma testowa firmy Microsoft dla wszystkich języków .NET. Jest rozszerzalny i współpracuje z interfejsem wiersza polecenia .NET, Visual Studio, Visual Studio Code i Rider. Obsługuje zarówno programy VSTest, jak i Microsoft.Testing.Platform.
Aby uzyskać więcej informacji, zobacz następujące zasoby:
- Uruchamianie testów za pomocą narzędzia MSTest
- Rozpocznij pracę z językiem C#
- Rozpocznij pracę z językiem F#
- Rozpocznij pracę z Visual Basic
NUnit
NUnit to struktura testowania jednostkowego dla wszystkich języków .NET. Początkowo NUnit został przeniesiony z JUnit, a aktualna wersja produkcyjna została całkowicie przepisana z wieloma nowymi funkcjami i obsługą szerokiego zakresu platform .NET. Jest to projekt .NET Foundation. Obsługuje zarówno programy VSTest, jak i Microsoft.Testing.Platform.
Aby uzyskać więcej informacji, zobacz następujące zasoby:
- obsługa platformy Microsoft.Testing.Platform w programie NUnit (NUnit runner)
- Testowanie jednostkowe w języku C#
- Testowanie jednostkowe przy użyciu języka F#
- testowanie jednostkowe przy użyciu Visual Basic
TUnit
TUnit jest całkowicie zbudowany na platformie Microsoft.Testing.Platform i nie obsługuje narzędzia VSTest. Aby uzyskać więcej informacji, zapoznaj się z dokumentacją narzędzia TUnit.
xUnit.net
xUnit.net to bezpłatne, skoncentrowane na społeczności narzędzie do testowania jednostkowego typu open source przeznaczone do .NET. Oryginalny wynalazca NUnit v2 napisał xUnit.net. xUnit.net to najnowsza technologia testowania jednostkowego .NET aplikacji. Działa również z usługami ReSharper, CodeRush i TestDriven.NET. xUnit.net jest projektem .NET Foundation i działa zgodnie z jego kodeksem postępowania. Obsługuje zarówno programy VSTest, jak i Microsoft.Testing.Platform
Aby uzyskać więcej informacji, zobacz następujące zasoby:
- obsługa platformy Microsoft.Testing.Platform w środowisku xUnit.net v3
- Testowanie jednostkowe w języku C#
- Testowanie jednostkowe przy użyciu języka F#
- Testowanie jednostkowe przy użyciu języka Visual Basic
Uruchamianie testów
interfejs wiersza polecenia .NET
Testy jednostkowe można uruchamiać ze wszystkich projektów testowych w rozwiązaniu przy użyciu .NET CLI z dotnet test. Interfejs wiersza polecenia .NET udostępnia większość funkcji, które oferują Zintegrowane Środowiska Programistyczne (IDE) za pośrednictwem interfejsów użytkownika. Interfejs wiersza poleceń .NET jest międzyplatformowy i dostępny do używania w procesach ciągłej integracji i dostarczania. Interfejs wiersza polecenia .NET jest używany z procesami skryptowymi do automatyzowania typowych zadań.
IDE
Niezależnie od tego, czy używasz Visual Studio, Visual Studio Code, czy Rider, istnieją graficzne interfejsy użytkownika do testowania funkcji. Istnieje więcej funkcji dostępnych dla IDE niż interfejsu wiersza poleceń, na przykład testy jednostkowe na żywo. Aby uzyskać więcej informacji, zobacz Dołączanie i wykluczanie testów w Visual Studio.
Zobacz też
Aby uzyskać więcej informacji, zobacz następujące artykuły: