Testen in .NET

In dit artikel wordt het concept van testen geïntroduceerd en wordt uitgelegd hoe verschillende soorten tests kunnen worden gebruikt om code te valideren. Er zijn verschillende hulpprogramma's beschikbaar voor het testen van .NET-toepassingen, zoals de .NET CLI of Integrated Development Environments (IDE's).

Testtypen

Geautomatiseerde tests zijn een uitstekende manier om ervoor te zorgen dat toepassingscode doet wat de auteurs ervan willen doen. In dit artikel worden eenheidstests, integratietests en belastingstests behandeld.

Eenheidstests

Een eenheidstest is een test die afzonderlijke softwareonderdelen of -methoden uitvoert, ook wel 'werkeenheid' genoemd. Eenheidstests mogen alleen code testen binnen het besturingselement van de ontwikkelaar. Ze testen geen problemen met infrastructuur. Infrastructuurproblemen omvatten interactie met databases, bestandssystemen en netwerkbronnen.

Zie Testhulpprogramma's voor meer informatie over het maken van eenheidstests.

Integratietests

Een integratietest verschilt van een eenheidstest omdat hiermee de mogelijkheid van twee of meer softwareonderdelen wordt gebruikt om samen te functioneren, ook wel bekend als hun 'integratie'. Deze tests worden uitgevoerd op een breder spectrum van het systeem dat wordt getest, terwijl eenheidstests zich richten op afzonderlijke onderdelen. Integratietests omvatten vaak problemen met infrastructuur.

Belastingstests

Een belastingstest is bedoeld om te bepalen of een systeem een opgegeven belasting kan verwerken, bijvoorbeeld het aantal gelijktijdige gebruikers dat een toepassing gebruikt en de mogelijkheid van de app om interacties responsief te verwerken. Zie ASP.NET Core belastings-/stresstests voor meer informatie over het testen van belasting van webtoepassingen.

Testoverwegingen

Houd er rekening mee dat er best practices zijn voor het schrijven van tests. Test Driven Development (TDD) is bijvoorbeeld wanneer een eenheidstest wordt geschreven vóór de code die moet worden gecontroleerd. TDD is net als het maken van een overzicht voor een boek voordat u het schrijft. Het is bedoeld om ontwikkelaars te helpen eenvoudigere, beter leesbare en efficiënte code te schrijven.

Testhulpprogramma's

.NET is een ontwikkelplatform voor meerdere talen en u kunt verschillende testtypen schrijven voor C#, F# en Visual Basic. Voor elk van deze talen kunt u kiezen uit verschillende testframeworks.

xUnit

xUnit is een gratis, open source, communitygerichte eenheidstestprogramma voor .NET. Geschreven door de oorspronkelijke inventaris van NUnit v2, is xUnit.net de nieuwste technologie voor het testen van .NET-apps. xUnit.net werkt met ReSharper, CodeRush, TestDriven.NET en Xamarin. Het is een project van de .NET Foundation en werkt onder hun gedragscode.

Zie de volgende resources voor meer informatie:

Nunit

NUnit is een framework voor eenheidstests voor alle .NET-talen. In eerste instantie is de huidige productierelease herschreven met veel nieuwe functies en ondersteuning voor een breed scala aan .NET-platforms. Het is een project van de .NET Foundation.

Zie de volgende resources voor meer informatie:

MSTest

MSTest is het Microsoft-testframework voor alle .NET-talen. Het is uitbreidbaar en werkt met zowel .NET CLI als Visual Studio. Zie de volgende resources voor meer informatie:

.NET CLI

U kunt een oplossingseenheidstests uitvoeren vanuit de .NET CLI met de dotnet-testopdracht . De .NET CLI maakt een meerderheid van de functionaliteit beschikbaar die Integrated Development Environments (IDE's) beschikbaar maken via gebruikersinterfaces. De .NET CLI is platformoverschrijdend en beschikbaar voor gebruik als onderdeel van continue integratie- en leveringspijplijnen. De .NET CLI wordt gebruikt met scriptprocessen om algemene taken te automatiseren.

IDE

Of u nu Visual Studio, Visual Studio voor Mac of Visual Studio Code gebruikt, er zijn grafische gebruikersinterfaces voor het testen van functionaliteit. Er zijn meer functies beschikbaar voor IDE's dan de CLI, bijvoorbeeld Live Unit Testing. Zie Testen met Visual Studio opnemen en uitsluiten voor meer informatie.

Zie ook

Raadpleeg voor meer informatie de volgende artikelen: