Delen via


Databasecode controleren met behulp van SQL Server-eenheidstests

U kunt SQL Server-eenheidstests gebruiken om een basislijnstatus voor uw database vast te stellen en vervolgens eventuele volgende wijzigingen te controleren die u aanbrengt in databaseobjecten.

Als u een basislijnstatus voor een database wilt instellen, maakt u een testproject en schrijft u sets Transact-SQL die op uw databaseobjecten werken. Door deze tests te gebruiken, kunt u in een geïsoleerde ontwikkelomgeving controleren of deze objecten werken zoals verwacht. Testen van SQL Server-eenheden werkt goed in combinatie met offlinedatabaseontwikkeling met behulp van SQL Server-databaseprojecten. Wat zijn SQL-databaseprojecten? voor meer informatie. Zodra u een basislijnset met SQL Server-eenheidstests hebt, kunt u deze tests gebruiken om te controleren of de database correct werkt voordat u wijzigingen in versiebeheer controleert.

U kunt tests maken om wijzigingen in een databaseobject te controleren. Daarnaast kunt u automatisch stubs van Transact-SQL code genereren waarmee databasefuncties, triggers en opgeslagen procedures worden getest.

Opmerking

U kunt SQL Server-eenheidstests maken en uitvoeren zonder dat er een databaseproject is geopend. Als u echter automatisch testscripts wilt genereren om specifieke databaseobjecten uit uw project te testen, moet u het databaseproject openen dat de objecten bevat die u wilt testen.

Wanneer u of uw teamleden het databaseschema wijzigen, kunt u deze tests gebruiken om te controleren of de wijzigingen de bestaande functionaliteit hebben verbroken. U maakt SQL Server-eenheidstests om de software-eenheidstests aan te vullen die uw softwareontwikkelaars maken. U moet beide sets tests voltooien om het algehele gedrag van uw toepassing te controleren.

Uw eenheidstests kunnen controleren of de procedures slagen wanneer ze naar verwachting slagen en dat de procedures mislukken wanneer ze naar verwachting mislukken. Het testen of de juiste fouten optreden wordt negatieve testen genoemd.

Ondersteuning voor Visual Studio-edities voor SQL Server-eenheidstests

Met de functie sql Server-eenheidstests, die is toegevoegd in de update van SQL Server Data Tools van december 2012, kunt u SQL Server-eenheidstests maken, wijzigen en uitvoeren in Visual Studio 2010 Professional en Visual Studio 2012 Professional en hogere edities.

Als u ervoor wilt zorgen dat u de meest recente update voor SQL Server Data Tools installeert, opent u het dialoogvenster Controleren op updates.

De geïntegreerde SQL Server Data Tools-shell van Visual Studio 2010 en Visual Studio 2012 biedt geen ondersteuning voor SQL Server-eenheidstests.

Algemene taken

In de volgende tabel vindt u beschrijvingen van algemene taken die ondersteuning bieden voor dit scenario en vindt u koppelingen naar meer informatie over hoe u deze taken kunt voltooien.

Algemene taken Ondersteunende inhoud
Praktijk oefenen: U kunt een inleidende procedure volgen om vertrouwd te raken met het maken en uitvoeren van een eenvoudige SQL Server-eenheidstest. Deze procedure bevat een voorbeeld van een negatieve unit test voor SQL Server. Overzicht: Een SQL Server-eenheidstest maken en uitvoeren
Sql Server-eenheidstests definiëren: U moet sql Server-eenheidstests maken in hun eigen project. U configureert de instellingen voor dat project en definieert een of meer testvoorwaarden voor elke test. Sql Server-eenheidstests maken en definiëren

Testvoorwaarden gebruiken in SQL Server-eenheidstests
Sql Server-eenheidstests uitvoeren: Nadat u een of meer eenheidstests hebt gedefinieerd, voert u deze uit, voert u eventuele problemen op en onderzoekt u de testresultaten. SQL Server-eenheidstests uitvoeren
Groepen tests beheren (Visual Studio 2010): U kunt tests in groepen organiseren als ze meestal tegelijkertijd moeten worden uitgevoerd. Testlijsten worden nog steeds ondersteund, maar voor nieuwe groepen tests moet u in plaats daarvan testcategorieën overwegen. U kunt bijvoorbeeld een testcategorie maken voor de tests voor uw triggers of voor alle objecten in een bepaald schema. Testcategorieën definiëren om uw tests te groeperen

Testlijsten definiëren om uw tests te groeperen
Controleer uw testprojecten en test in versiebeheer: Nadat u uw tests hebt uitgevoerd en hebt gecontroleerd of deze correct werken, moet u het testproject en alle bijbehorende bestanden controleren in versiebeheer, zodat alle leden van uw team uw tests kunnen uitvoeren. Door uw testproject naast uw SQL Server-databaseproject in versiebeheer te controleren, kunt u eenvoudig compatibele versies van zowel de database als uw databasetests herstellen. Bestanden toevoegen aan versiebeheer

De Check-In en Wachtende Wijzigingen-vensters gebruiken
Aangepaste testvoorwaarden definiëren: U kunt aangepaste testvoorwaarden maken als u moet testen op gedrag dat niet wordt behandeld in de standaardset testvoorwaarden. U moet deze voorwaarden distribueren naar alle leden van uw team die de tests willen uitvoeren die gebruikmaken van de nieuwe voorwaarden. Scenario: Aangepaste testvoorwaarden voor SQL Server-eenheidstests definiëren
Bestaande eenheidstests bijwerken: Als u database-eenheidstests hebt die zijn gemaakt in een eerdere versie van Visual Studio, moet u deze upgraden voordat ze met deze release worden gebouwd en uitgevoerd.

NOTITIE: Als u een oplossing opent die zowel een databaseproject als een testproject voor een database-eenheid uit een eerdere versie van Visual Studio bevat, wordt u gevraagd het databaseproject bij te werken. U wordt niet gevraagd om testprojecten voor database-eenheden bij te werken. Deze moeten handmatig worden bijgewerkt.
Een ouder testproject upgraden met database-eenheidstests
Uitbreidbaarheid: U kunt SQL Server Data Tools uitbreiden door functie-extensies te maken. Aangepaste testvoorwaarden voor SQL Server-eenheidstests
Problemen oplossen: Meer informatie over het oplossen van veelvoorkomende problemen met het testen van SQL Server-eenheden. Problemen met het testen van SQL Server-database-eenheden oplossen