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 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 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:
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ń.
Rozpocznij testowanie aplikacji języka C# przy użyciu narzędzi do testowania w programie Visual Studio. Dowiedz się, jak pisać testy, używać Eksploratora testów, tworzyć zestawy testów i stosować czerwony, zielony, refaktoryzowy wzorzec do pisania kodu.