31 top database testing interview questions
Onze experts hebben de meest gestelde vragen beantwoord Database testen Interviewvragen voor eerstejaars en ervaren kandidaten:
Dit is een verzameling van meer dan 30 topvragen voor DB-testinterviews met gedetailleerde antwoorden. Deze DB-testvragen worden meestal gesteld in QA-testinterviews.
Neem deze vragen en antwoorden door als u zich voorbereidt op een softwaretestgesprek waarvoor ook databasevaardigheden vereist zijn.
Top interviewvragen over databasetests
Welk type database (SQL) vragen worden gesteld in interviews voor de functie van testingenieur (niet voor databasetester)?
Dit hangt van veel factoren af of deze vragen voor testfuncties op instapniveau zijn of voor ervaren testprofessionals. De diepte van database-interviewvragen is afhankelijk van de ervaring van de kandidaat.
Ongeacht de functie moet de kandidaat altijd duidelijk en zelfverzekerd zijn over de databaseconcepten. Voor de meeste softwaretestposities moet u databasekennis hebben om enkele databasecontroles uit te voeren. Bijna alle applicaties hebben een interactie met een database nodig.
Laten we deze interviewvragen eens bekijken voor beginnende softwaretestposities.
In interviews kunnen de volgende vragen gesteld worden:
- Eenvoudige en tot op zekere hoogte geneste SQL-query's om gegevens uit databasetabellen op te halen.
- Voorbeelden van database-instructies voor Create Database, Create table en Drop Table.
- Concept van 'primaire sleutel', 'externe sleutel' en DB-index.
- Voorbeelden van SQL-instructies SELECT, INSERT, DELETE, ALTER en UPDATE.
- SQL-joins (Inner Join, Left Join, Right Join en Full join) met voorbeelden.
Oefen SQL-join-queries op dummy-tabellen en zie resultaten.
Voor ervaren softwaretestposities zijn de interviewvragen afhankelijk van de functie-eis. Voor dergelijke functies verwachten interviewers gedetailleerde databankkennis van de kandidaten.
Notitie: Als u vragen krijgt over SQL-queries in de database, zeg dan nooit: 'Alle query-statements worden uitgevoerd door ontwikkelaars'. Het is prima om te zeggen dat u hulp krijgt van ontwikkelaars om complexe SQL-query's te schrijven, maar uiteindelijk redt u het zelf.
Laten we beginnen met echte DB-vragen en antwoorden:
V # 1) Wat is databasetesten?
Antwoord: Databasetests / back-end-testen is een proces waarbij de impact van back-enddatabasewerking op front-end web- / desktoptoepassingen wordt gecontroleerd.
Het is onderverdeeld in de volgende verschillende categorieën:
- Data Validiteit testen: Tijdens het testen moeten testers een goede kennis hebben van SQL-queries.
- Gegevensintegriteit testen: Tijdens het testen moeten testers / ontwikkelaars de referentiële integriteit en verschillende beperkingen kennen.
- Database prestatie testen: Tijdens het testen moeten testers / ontwikkelaars goed zijn in het ontwerpen van de structuur van de tabel.
- Testen van procedure, triggers en functies: Tijdens het testen moeten testers / ontwikkelaars een perfect begrip hebben van de testprocedure, triggers en functies.
Vraag 2) Waarom is het testen van databases belangrijk?
Antwoord: Hoewel we allemaal weten dat de database niet als een kleine tabel is, is het inderdaad een grote container met veel tabellen en vol met gegevens die tegelijkertijd gegevens aan veel web- / desktopapplicaties levert.
hoe je een functie aanroept in de hoofdpython
Het databasetestproces zorgt ervoor dat de juiste en unieke gegevens (zonder bug) op de juiste locatie worden afgeleverd. Deze bugs kunnen enkele ernstige problemen veroorzaken, zoals impasse, gegevensbeschadiging, slechte prestaties, inconsistentie, enz.
V # 3) Wat controleren we gewoonlijk tijdens het databasetestproces?
Antwoord: Het testen van databases vereist enige diepgaande kennis en een meer gedefinieerd plan van aanpak om de gegevens van een bepaalde applicatie te testen.
In dit testproces controleren we meestal,
- De validatie van de veldgrootte
- Beperkingen.
- Indexen worden gemaakt of niet (voor prestatiegerelateerde problemen)
- Opgeslagen procedures
- De veldgrootte die in de applicatie is gedefinieerd, komt overeen met die in de database.
V # 4) Kunt u de database handmatig testen, zo ja, hoe dan? Leg het voorbeeld uit.
Antwoord: Het moet het bedieningsgedrag observeren. Bekijk de bewerkingen van de front-end en het effect ervan op de back-enddatabase. Controleer tijdens het toevoegen van een record (XYZ) van de front-end aan de back-enddatabase handmatig of het record al dan niet is aangetast in de back-enddatabase. Evenzo werkt het voor verwijderen, bijwerken, enz.
Bijvoorbeeld, Om de gegevens bij te houden van studenten die examen afleggen, voert u de gegevens van de student in via het front-end-systeem en controleert u handmatig het effect van deze toevoeging op de back-end-database.
Q # 5) Hoe databaseprocedures en triggers testen?
Antwoord: Het proces van het testen van databaseprocedures en triggers vereist kennis van invoerparameters, uitvoerparameters en EXEC-instructies. De EXEC-instructie is nuttig bij het uitvoeren van de procedure en het observeren van het gedrag van de tabellen.
Laten we eens kijken hoe databaseprocedures en -triggers kunnen worden getest:
- Open eerst het databaseproject dat wordt weergegeven in de oplossingsverkenner.
- Zodra het gewenste project is geopend, gaat u naar het menu Weergeven, klikt u op het databaseschema en opent u de projectmap vanuit het menu Schemaweergave.
- Klik met de rechtermuisknop op het te testen object en klik vervolgens op Create Unit Tests. Een dialoogvenster 'Create Unit Tests' wordt geopend en toont alle mappen en objecten van het databaseproject en het selectievakje voor het geselecteerde object is aangevinkt.
- Maak vervolgens een nieuw taaltestproject.
- Kies ervoor om de unit-test in een bestaande testklasse in te voegen of maak een nieuwe testklasse en klik op OK.
- Om het project te configureren, verschijnt het dialoogvenster Projectconfiguratie om de testprojectinstellingen te configureren. Het proces vereist een databaseverbinding en een plan voor het genereren van gegevens. De databaseverbinding is voor het uitvoeren van het testresultaat.
- Configureer ten slotte het project en klik op OK.
V # 6) Wat bedoel je met datagestuurde tests?
Antwoord: Datagestuurd testen is een term die wordt gebruikt in het testproces waarbij testscripts tijdens de uitvoering testgegevens en / of uitvoerwaarden uit gegevensbestanden (datapools, Excel-bestanden, ADO-objecten, CSV-bestanden, ODBC-bronnen) lezen in plaats van dezelfde harde -gecodeerde waarden elke keer. De test helpt testers bij het controleren van de efficiëntie van de applicatie bij het omgaan met verschillende inputs.
V # 7) Wat is de databasetrigger, hoe controleert u of de trigger is geactiveerd of niet en kunt u de trigger op aanvraag gebruiken?
Antwoord:
Database-trigger: Een trigger is in feite een opgeslagen procedure die wordt gebruikt om de integriteit van de gegevens in de database te behouden. Het wordt automatisch uitgevoerd om te reageren op een bepaalde gebeurtenis van een tabel / weergave in een database.
Om te controleren of de trigger is geactiveerd of niet; gebruik de query van het gemeenschappelijke auditlogboek om de trigger van de gegevenstabel weer te geven.
Triggers kunnen niet op aanvraag worden aangeroepen, ze worden aangeroepen wanneer een tabel een actie (INSERT, DELETE & UPDATE) weergeeft die voor die specifieke tabel is gedefinieerd.
V # 8) Hoe test u na het invoeren van de gegevens vanuit de front-end applicatie-interface of een database is bijgewerkt of niet?
Antwoord: Het hangt volledig af van de applicatie-interface die u gebruikt.
Dit zijn de volgende manieren om te testen:
- U kunt alleen vanaf de front-end verifiëren wanneer de applicatie-interface een weergavefunctie toont van de gegevens die u hebt ingevoerd. Black box-testingenieurs voeren deze functionaliteitsverificatietest voornamelijk op deze manier uit.
- Als de applicatie-interface geen weergavefunctie biedt van de gegevens die u hebt ingevoerd, kunt u controleren of de database is bijgewerkt met behulp van relevante SQL / Oracle Query.
- De checkpoint-functie van WinRunner / QTP kan ook worden gebruikt om te controleren op database-updates.
V # 9) Hoe de opgeslagen procedures testen?
Antwoord: De testingenieur moet enkele stappen volgen om het Opgeslagen procedures
- Ten eerste moet de testingenieur de vereiste en ook het doel van een bepaalde opgeslagen procedure begrijpen.
- Controleer vervolgens of alle indexen, joins, updates en verwijderingen nauwkeurig zijn in vergelijking met de tabellen die worden vermeld in de opgeslagen procedure en zorg er ook voor dat de opgeslagen procedure in het algemene standaardformaat is, zoals opmerkingen, bijgewerkt door, enz.
- Verifieer vervolgens voor verschillende sets invoerparameters de procedure aanroepnaam, aanroepparameters en verwachte reacties.
- Voer de procedure handmatig uit met databaseclientprogramma's zoals TOAD, MySQL of Query Analyzer.
- Om de resultaten te vergelijken met de verwachte waarden, voert u de procedure opnieuw uit door verschillende parameters op te geven.
- Automatiseer ten slotte de tests met QTP.
Q # 10) Wat zijn joins en noem je verschillende soorten joins?
Antwoord: Join wordt gebruikt om twee of meer dan twee tabellen te combineren en weer te geven als een enkele set gegevens.
In SQL zijn er de volgende soorten joins
- Innerlijke verbinding
- Outer Join
- Linker toetreden
- Right Join
In Oracle / PLSQL zijn er vier verschillende soorten joins,
- Innerlijke verbinding
- Left-Outer Join
- Right-Outer Join
- Full-Outer Join
Q # 11) Wat bedoel je met index en uitleg over verschillende soorten indexen?
Antwoord: Een index is een database-object, gemaakt op een kolom van de tabel om gegevens sneller en efficiënter te vinden (of we kunnen zeggen, het wordt gebruikt om zoekopdrachten / zoekopdrachten te versnellen).
Verschillende soorten indexen zijn:
- B-Tree-index
- Bitmap-index
- Geclusterde index
- Dekkingsindex
- Niet-unieke index
- Unieke index
Q # 12) Wat bedoel je met DBMS?
Antwoord: Een database is een gestructureerde set gegevens. Database Management System (DBMS) is een computersoftwaretoepassing die een communicatienetwerk creëert tussen gebruikers, andere toepassingen en de database om informatie op te slaan, te wijzigen en uit een database te extraheren.
Beroemde DBMS'en zijn My SQL, Postgre SQL, Microsoft SQL Server, Oracle, SAP en IBM DB2.
Q # 13) Wat bedoel je met DML?
Antwoord: Data Manipulation Language (DML) is een lid van de computerprogrammeertaal die ons in staat stelt om gegevens in een database te selecteren, in te voegen, te verwijderen en bij te werken. DML is in wezen betrokken bij Structured Query Language (SQL), waarmee gebruikers gegevens in een relationele database kunnen ophalen en gebruiken.
Q # 14) Wat bedoel je met DCL-opdrachten en leg je de soorten opdrachten uit die door DCL worden gebruikt?
Antwoord: Data Control Language (DCL) is een onderdeel van SQL en regelt het gebruik van gegevens die zijn opgeslagen in een database.
Er zijn twee soorten DCL-opdrachten:
- Verlenen: Met de opdracht kunnen gebruikers toegang krijgen tot de database
- Intrekken: Geef gebruikers geen toegang meer tot de database
Q # 15) Wat bedoel je met white box testen en black box testen?
Antwoord:
Black-box testen is een softwaretesttechniek om het functionele gedrag van een applicatie te testen zonder in de interne structuren van een applicatie te komen. De code / interne structuur van de kernapplicatie en programmeerkennis zijn niet vereist voor black-box-testen, maar kernkennis van applicatiefunctionaliteit is vereist om de applicatie te testen.
White Box Testing (WBT) wordt ook wel Code-Based Testing of Structural Testing genoemd om de interne structuur van een softwareapplicatie te testen. In het geval van white-box testen, moet de tester een goed begrip hebben van de interne structuur van een applicatie en een goede kennis hebben van programmeervaardigheden om testcases en interne structuur van een applicatie te ontwerpen.
Q # 16) Ondersteunt QTP SQL-queries, hoe te gebruiken SQL-query's in QTP
Antwoord: Hoewel QTP geen ingebouwde functie heeft voor databaseconnectiviteit, gebruiken testers VBScript-taal om verbinding te maken en te communiceren met databases met behulp van ADODB-objecten.
ADODB-objecten zijn onderverdeeld in vier verschillende eigenschappen / methoden die helpen bij het succesvol maken van een databaseverbinding,
- Verbinding: Handig bij het maken van een verbinding met een Database
- Opdracht: Handig bij het uitvoeren van een SQL-commando (Query's / Stored Procedures)
- Velden: Handig bij het ophalen van een bepaalde kolom uit een recordset na het uitvoeren van een Query / Stored Procedure.
- Recordset: Wordt gebruikt om gegevens uit een database op te halen
Q # 17) Welke SQL-statements kunnen worden gebruikt bij databasetests?
Antwoord: Alle DDL-, DML-, DCL- en TCL-instructies van SQL kunnen worden gebruikt bij het testen van databases,
(i) DDL (Data Definition Language): Alle uitspraken die hiermee verband houden, kunnen worden gebruikt bij het definiëren van de databasestructuur of het schema.
Verklaringen: CREATE, ALTER, DROP, TRUNCATE, COMMENT en RENAME
(ii) DML (Data Manipulation Language): Alle uitspraken die hiermee verband houden, kunnen worden gebruikt voor het beheren van gegevens binnen schemaobjecten.
Verklaringen: SELECTEER, VOEG, UPDATE, VERWIJDER, SAMENVOEGEN, OPROEP, UITLEG PLAN, en VERGRENDEL TABEL.
(iii) DCL (Data Control Language): GRANT-verklaring en REVOKE-verklaring.
(iv) TCL (Transaction Control Language): Alle verklaringen die hiermee verband houden, kunnen worden gebruikt om de wijzigingen die door DML-verklaringen zijn aangebracht te beheren. Met behulp van TCL kunnen afschriften worden gegroepeerd in logische transacties.
Verklaringen: COMMIT, SAVEPOINT, ROLLBACK en SET TRANSACTION.
V # 18) Hoe de gegevensbelastingstests uit te voeren bij het testen van databases?
Antwoord: Voor het testen van gegevensbelasting,
- U moet kennis hebben van de brondatabase (gegevenstabellen, kolommen, bijbehorende beperkingen, gegevenstypen) en de doeldatabase (gegevenstabellen, kolommen, gegevenstypen en beperkingen).
- U moet de compatibiliteit tussen de brondatabase en de doeldatabase controleren via het DTS-pakket.
- U moet het overeenkomstige DTS-pakket openen in SQL Enterprise Manager en het DTS-pakket uitvoeren (als u SQL Server gebruikt).
- Vergelijk de gegevens van de kolom van de bron en het doel.
- Controleer het aantal rijen van Bron en Doel.
- Controleer na het bijwerken van de gegevens in de brondatabase of de wijzigingen zijn doorgevoerd in de doeldatabase.
- Controleer over ongewenste tekens en NULL's.
- Database load testing, controleer het volume van de databaseserver om de queries te verwerken en controleer ook de responstijd van databaseserver en client.
V # 19) Is een 'A fast database retrieval rate' een testbare vereiste?
Antwoord: Nee. Ik denk het niet omdat de vereiste onduidelijk lijkt. De SRS moet duidelijk de prestatie- of transactievereisten weergeven, d.w.z. het moet vermelden als; 'Database-ophaalsnelheid van 5 microseconden'.
V # 20) Hoe kunt u een SQL-query in QTP testen zonder tussenkomst van databasecontrolepunten?
Antwoord: De onderstaande scriptprocedure helpt ons bij het verbinden met de database, waar we beide kunnen testen; de database en queries.
naar) De scriptprocedure voor databaseverbinding,
db_connect ('query1', DRIVER = {naam stuurprogramma}; SERVER = servernaam;
UID = uidname; PWD = wachtwoord; DBQ = databasenaam “);
b) De scriptprocedure om de query uit te voeren,
db_excecute_query ('query1 ″,' schrijf query die u wilt uitvoeren ');
-Voorwaarde om vermeld te worden-
c) De scriptprocedure om de verbinding met de database te verbreken,
db_disconnect ('query');
V # 21) Wat zijn alle dingen die nodig zijn bij het testen van databases om goede testcases te schrijven?
Antwoord: Kennis van de volgende dingen is vereist voordat de database-testcases worden geschreven,
- Begrijp de applicatie volledig en ook de functionele vereisten van de applicatie.
- Bekijk andere entiteiten die in een applicatie zijn gebruikt, zoals back-end databasetabellen, joins tussen de tabellen, cursors (indien aanwezig), triggers (indien aanwezig), opgeslagen procedures (indien aanwezig), invoerparameters en uitvoerparameters voor het ontwikkelen dat vereiste.
- Na het verzamelen van alle benodigde informatie, noteert u de testcase met verschillende invoerwaarden om alle bronnen te onderzoeken.
Het schrijven van testcases voor back-end testen is in tegenstelling tot functioneel testen, men zou de white box testtechniek moeten gebruiken.
V # 22) Wat is opnieuw testen en hoe verschilt het van datagestuurd testen
Antwoord: Na het uitvoeren van de test in termen van het vinden van het defect dat al is gedetecteerd en verholpen, wordt het opnieuw uitvoeren van dezelfde test met verschillende invoerwaarden om te bevestigen dat het oorspronkelijke defect met succes is verwijderd, opnieuw testen of bevestigingstesten genoemd.
Opnieuw testen wordt ook wel Data-Driven Testing genoemd, maar het verschil tussen beide is dat Retesting een handmatig testproces is, terwijl applicatietests worden uitgevoerd met de hele nieuwe set gegevens.
Gegevensgestuurd testen (DDT): Het is een automatiseringstestproces waarbij een applicatie wordt getest met meerdere testgegevens.Het is simpel en gemakkelijk dan opnieuw testen waarbij de tester gewoon voor het systeem zit en handmatig verschillende nieuwe invoerwaarden invoert vanuit de front-end interface, het is echt een saaie techniek.
V # 23) Wat zijn de soorten datagestuurd testen?
Antwoord:
Er zijn vier soorten datagestuurd testen:
- Dynamische indiening van testgegevens via het toetsenbord (toetsgestuurde test): In sommige gevallen testen testers een bepaalde applicatie opnieuw met verschillende invoerwaarden om de berekening te valideren via dynamische indiening. Om de invoerwaarde in te dienen, kunnen testers dus de volgende functie in TSL gebruiken; script– create_input_dialog ('label');
- Gegevensgestuurde tests via platte bestanden (.txt, .doc): In sommige gevallen doen testers het opnieuw testen door rekening te houden met de gegevens van het platte bestand. Testers verzamelen die platte bestanden van oude databases / klanten.
- Datagestuurde tests via front-end-objecten: In sommige gevallen maken testers automatiseringsscripts door rekening te houden met de front-endobjectwaarden, zoals lijst, menu, tabel, gegevensvenster, ocx, enz.
- Gegevensgestuurde tests via Excel-sheet: In sommige gevallen gebruiken testers de hulp van deze gegevensgestuurde test om het script voor meerdere invoer uit te voeren. Deze meervoudige invoer bevindt zich in kolommen van een Excel-blad. We moeten deze testgegevens verzamelen uit de backend-tabellen.
V # 24) Hoe schrijf je een query om de op een na grootste waarde uit een gegeven kolom van een tabel te krijgen?
Antwoord: Dit is een query om de op een na grootste waarde uit een bepaalde kolom van een tabel te halen.
Bijvoorbeeld,
Om de op een na grootste cijfers te krijgen uit de kolom 'Cijfers' van een tabel 'Studenten'
V # 25) Hoe een vraag te schrijven om de 10 te krijgenthhoogste salaris van een medewerkerstafel?
Antwoord: Dit is een vraag om het op één na hoogste salaris van een werknemerstabel te krijgen,
Hier kunt u ze door een willekeurig nummer vervangen.
Bijvoorbeeld, als je het 10e van het hoogste salaris wilt krijgen, vervang dan n door 10.
V # 26) Hoe testcases schrijven vanuit vereisten, betekenen de vereisten de exacte functionaliteit van AUT?
Antwoord: Ja, de vereisten moeten de exacte functionaliteit van AUT aangeven.
Om dit te doen,
- Onderzoek de vereiste om de algemene functionaliteit te begrijpen.
- Bepaal vervolgens welke testontwerpmethoden geschikt zijn om een testcase te schrijven - Black Box-testontwerpmethoden zoals; Equivalentiepartitionering, grenswaardeanalyse, foutschatting en oorzaak-gevolg grafieken.
- Als u eenmaal hebt besloten welke testontwerpmethode geschikt is, schrijft u uw testcases in vereistenanalyse en ontwerpfase.
Op deze manier zorgt u ervoor dat alle eisen toetsbaar zijn.
V # 27) Wat is het testscenario om een database te testen die is gemigreerd van de ene SQL Server naar de andere?
Antwoord: Allereerst moeten we nagaan wat alle verbeteringen en wijzigingen zijn gebeurd met de SQL Server waarnaar we van plan zijn te migreren.
De volgende, ontwerp de testcase volgens de volgende overwegingen,
- Een gegevenstype dat is gebruikt.
- De lengte van het dataveld van SQL Server (server waarnaar we de gegevens migreren) moet hetzelfde zijn als de SQL Server van waaruit we de gegevens verwijderen.
- Elke taak moet correct worden georganiseerd.
Q # 28) Waar staat het RDBMS voor en wat zijn de belangrijkste RDBMS die door SQL worden gebruikt?
Antwoord: RDBMS staat voor Relational Database Management Systems. Grote RDBMS die betrokken zijn bij SQL zijn onder meer Sybase, Oracle, Access, Ingres, Microsoft SQL Server, etc.
Q # 29) Leg prestatietests uit en de knelpunten ervan.
Antwoord: Prestatietesten is een softwaretesttechniek om te bepalen hoe een systeem presteert in termen van snelheid, gevoeligheid en stabiliteit onder een zware werkbelasting. Dit testen vereist dure gereedschappen en goed opgeleide en ervaren testers voor gebruik.
Q # 30) Wat is CMMI en beschrijft verschillende niveaus van CMM?
Antwoord: CMMI staat voor Capability Maturity Model Integration is een training- en evaluatiemodel voor procesontwikkeling van verschillende bedrijfsprocessen in software engineering.
Vijf CMM-volwassenheidsniveaus voor een organisatie zijn:
- Eerste: Op dit niveau hebben organisaties geen geverifieerde techniek en omgeving, dus meestal lopen het budget en de planning van organisaties over.
- Herhaalbaar: Op dit niveau hebben organisaties basistechnieken en richtlijnen om de kosten en planningstijd te beperken, zodat ze hetzelfde kunnen herhalen in het volgende vergelijkbare project.
- Bepaald: Op dit niveau zijn alle technieken goed georganiseerd en uitgelegd in een duidelijke en standaardvorm.
- Beheerd: Op dit niveau zijn organisaties veel meer ontwikkeld dan het gedefinieerde niveau. Hier wordt contact opgenomen met technieken met behulp van statistische en andere kwantitatieve technieken.
- Optimaliseren: Organisaties proberen vastberaden prestaties te ontwikkelen via moderne technische vooruitgang.
V # 31) Wat is de betekenis van het record in een database?
Antwoord: In een database is een record de set waarden / velden van een specifieke entiteit.
Bijvoorbeeld, Office_Employee Record, Book Record, enz.
We hopen dat u deze gedetailleerde Database-interviewvragen met antwoorden leuk vindt. Laat het ons weten als u vragen heeft.
dot net interviewvragen en antwoorden
Aanbevolen literatuur
- Interview vragen en antwoorden
- Vragen en antwoorden over ETL-tests
- Database testen met JMeter
- Enkele interessante sollicitatievragen voor het testen van software
- 25 Beste Agile Testing Interview Vragen en Antwoorden
- Top 20 belangrijkste API-testvragen en antwoorden op sollicitatiegesprekken
- Vragen en antwoorden over softwaretests (deel 1)
- Top 30 interviewvragen en antwoorden over beveiligingstests