Testowanie na .NET

W tym artykule przedstawiono koncepcję testowania i pokazano, jak różne rodzaje testów mogą być używane do weryfikowania kodu. Dostępne są różne narzędzia do testowania aplikacji .NET, takie jak interfejs wiersza polecenia .NET lub zintegrowane środowiska projektowe (IDE).

Typy testów

Posiadanie testów automatycznych to doskonały sposób na zapewnienie, że kod aplikacji działa w sposób, jaki zamierza wykonać jego autorzy. Ten artykuł obejmuje testy jednostkowe, testy integracji i testy obciążeniowe.

Testy jednostkowe

Test jednostkowy to test, który wykonuje poszczególne składniki lub metody oprogramowania, nazywane również "jednostką pracy". Testy jednostkowe powinny testować tylko kod w ramach kontroli dewelopera. Nie testują problemów z infrastrukturą. Kwestie związane z infrastrukturą obejmują interakcję z bazami danych, systemami plików i zasobami sieciowymi.

Aby uzyskać więcej informacji na temat tworzenia testów jednostkowych, zobacz Narzędzia do testowania.

Testy integracji

Test integracji różni się od testu jednostkowego tym, że umożliwia działanie razem dwóch lub większej liczby składników oprogramowania, nazywanych również ich "integracją". Testy te działają na szerszym spektrum testowego systemu, natomiast testy jednostkowe koncentrują się na poszczególnych składnikach. Często testy integracji obejmują kwestie związane z infrastrukturą.

Testy obciążeniowe

Test obciążeniowy ma na celu określenie, czy system może obsłużyć określone obciążenie, na przykład liczbę współbieżnych użytkowników korzystających z aplikacji oraz zdolność aplikacji do reagowania na interakcje. Aby uzyskać więcej informacji na temat testowania obciążenia aplikacji internetowych, zobacz ASP.NET Core load/stress testing (Testowanie obciążenia/obciążenia).

Zagadnienia dotyczące testowania

Należy pamiętać, że istnieją najlepsze rozwiązania dotyczące pisania testów. Na przykład TDD (Test Driven Development) to czas, gdy test jednostkowy jest pisany przed kodem, który ma zostać zweryfikowany. TDD przypomina tworzenie konspektu książki przed jego napisem. Ma ona ułatwić deweloperom pisanie prostszego, bardziej czytelnego i wydajnego kodu.

Narzędzia do testowania

.NET to wielojęzyczna platforma deweloperska, która umożliwia pisanie różnych typów testów dla języków C#, F#i Visual Basic. Dla każdego z tych języków można wybrać jedną z kilku platform testowych.

xUnit

xUnit to bezpłatne, open source, skoncentrowane na społeczności narzędzie do testowania jednostek dla środowiska .NET. Napisany przez oryginalnego wynalazcę NUnit v2, xUnit.net to najnowsza technologia do testowania jednostek aplikacji .NET. xUnit.net współpracuje z narzędziami ReSharper, CodeRush, TestDriven.NET i Xamarin. Jest to projekt programu .NET Foundation i działa zgodnie z ich kodeksem postępowania.

Więcej informacji można znaleźć w następujących zasobach:

NUnit

NUnit to framework testowania jednostek dla wszystkich języków .NET. Po początkowym przenoszeniu z JUnit bieżąca wersja produkcyjna została przepisana z wieloma nowymi funkcjami i obsługą szerokiej gamy platform .NET. Jest to projekt programu .NET Foundation.

Więcej informacji można znaleźć w następujących zasobach:

MSTest

MSTest jest platformą testową firmy Microsoft dla wszystkich języków platformy .NET. Jest rozszerzalny i działa zarówno z interfejsem wiersza polecenia .NET, jak i Visual Studio. Więcej informacji można znaleźć w następujących zasobach:

.NET CLI

Testy jednostkowe rozwiązań można uruchomić z interfejsu wiersza polecenia .NET za pomocą polecenia dotnet test . Interfejs wiersza polecenia .NET uwidacznia większość funkcji, które zintegrowane środowiska projektowe (IE) udostępnia za pośrednictwem interfejsów użytkownika. Interfejs wiersza polecenia platformy .NET jest międzyplatformowy i można go używać w ramach potoków ciągłej integracji i dostarczania. Interfejs wiersza polecenia .NET jest używany z procesami skryptami do automatyzowania typowych zadań.

IDE

Niezależnie od tego, czy używasz Visual Studio, Visual Studio dla komputerów Mac czy Visual Studio Code, istnieją graficzne interfejsy użytkownika do testowania funkcji. Dla platform ID jest dostępnych więcej funkcji niż interfejs wiersza polecenia, na przykład Live Unit Testing. Aby uzyskać więcej informacji, zobacz Including and excluding tests with Visual Studio (Wykluczanie i wykluczanie testów z Visual Studio).

Zobacz też

Aby uzyskać więcej informacji, zobacz następujące artykuły: