31 top database testing interview questions
Våre eksperter svarte ofte Databasetesting Intervjuespørsmål for nybegynnere og erfarne kandidater:
Dette er en samling av 30+ topp DB-testintervjuspørsmål med detaljerte svar. Disse DB-testspørsmålene blir for det meste stilt i QA-testintervjuer.
Gå gjennom disse spørsmålene og svarene hvis du forbereder deg på programvare-testintervju som også krever databaseferdigheter.
Topp intervjusspørsmål om databasetesting
Hvilken type databasespørsmål (SQL) som ble stilt i intervjuer for testingeniørstilling (ikke for databasetester)?
Dette avhenger av mange faktorer om disse spørsmålene er for å teste stillinger på inngangsnivå eller for erfarne testpersoner. Dybden i spørsmål om databaseintervju avhenger av kandidatens erfaring.
Uavhengig av stillingen, bør kandidaten alltid være tydelig og trygg på databasekonseptene. For de fleste programvaretestposisjoner må du ha databasekunnskap for å utføre databasekontroller. Nesten alle applikasjoner trenger en interaksjon med en database.
La oss vurdere disse intervjuspørsmålene for programvare-teststillinger på grunnnivå.
Følgende spørsmål kan stilles i intervjuer:
- Grunnleggende og til en viss grad nestede SQL-spørsmål for å hente data fra databasetabeller.
- Eksempler på databaseuttalelser for Create Database, Create table og Drop Table.
- Konseptet 'Primary Key', 'Foreign Key' og DB index.
- Eksempler på SQL-setninger SELECT, INSERT, DELETE, ALTER og UPDATE.
- SQL blir med (Inner Join, Left Join, Right Join og Full join) med eksempler.
Øv SQL-spørsmål på dummy-tabeller og se resultater.
For erfarne programvaretesteposisjoner avhenger intervjuspørsmålene av jobbkravet. For slike stillinger forventer intervjuere detaljert databasekunnskap fra kandidatene.
Merk: Hvis du får spørsmål om SQL-spørsmål i databaser, må du aldri si at 'Du får alle spørsmålsuttalelser som skal utføres av utviklere'. Det er ok å si at du får hjelp fra utviklere til å skrive komplekse SQL-spørsmål, men til slutt klarer du deg selv.
La oss starte med faktiske DB-spørsmål og svar:
Q # 1) Hva er databasetesting?
Svar: Databasetesting / Back-end testing er en prosess for å kontrollere effekten av back-end databasedrift på front-end web / desktop applikasjoner.
Den er delt inn i følgende forskjellige kategorier:
- Datagyldighetstesting: Mens de utfører denne testingen, bør testere ha god kunnskap om SQL-spørsmål.
- Dataintegritetstesting: Mens de utfører denne testingen, bør testere / utviklere vite referanseintegritet og forskjellige begrensninger.
- Testing av databasens ytelse: Mens du gjør denne testingen, bør testere / utviklere være flinke til å utforme strukturen til tabellen.
- Testing av prosedyre, utløsere og funksjoner: Mens du gjør denne testingen, bør testere / utviklere ha en perfekt forståelse av testprosedyren, utløserne og funksjonene.
Spørsmål 2) Hvorfor databasetesting er viktig?
Svar: Selv om vi alle vet at databasen ikke er som en liten tabell, er den virkelig en stor beholder med mange tabeller og full av data som leverer data samtidig til mange nett / stasjonære applikasjoner.
beste gratis filkonverter for Windows 10
Databasetestprosessen sikrer at riktige og unike data (uten feil) blir levert til riktig sted. Disse feilene kan forårsake alvorlige problemer som fastlåst tilstand, datakorrupsjon, dårlig ytelse, inkonsekvens osv.
Spørsmål 3) Hva sjekker vi vanligvis i databasetestprosessen?
Svar: Databasetesting krever litt grundig kunnskap og en mer definert plan for tilnærming for å teste dataene til et bestemt program.
I denne testprosessen sjekker vi vanligvis,
- Validering av feltstørrelse
- Begrensninger.
- Indekser gjøres eller ikke (for ytelsesrelaterte problemer)
- Lagrede prosedyrer
- Feltstørrelsen som er definert i applikasjonen, samsvarer med den i DB.
Q # 4) Kan du teste databasen manuelt, hvis ja, hvordan? Forklar med eksempel.
Svar: Det må observeres operasjonsatferd. Observer operasjonene til front-enden og dens innvirkning på back-end-databasen. Mens du legger til en post (XYZ) fra front-end til back-end-databasen, må du sjekke manuelt at posten har blitt påvirket av back-end-databasen eller ikke. På samme måte vil det fungere for sletting, oppdatering, etc.
For eksempel, For å holde oversikt over studenter som gir eksamen, skriv inn studentens detaljer fra front-end-systemet og sjekk manuelt effekten av dette tillegget på back-end-databasen.
Q # 5) Hvordan teste databaseprosedyrer og utløsere?
Svar: Prosessen med å teste databaseprosedyrer og utløsere krever kunnskap om inndataparametere, utdataparametere og EXEC-setninger. EXEC-uttalelse er nyttig når du kjører prosedyren og observerer oppførselen til tabellene.
La oss se hvordan du tester databaseprosedyrer og utløsere:
- Åpne først databaseprosjektet som vises i løsningsutforskeren.
- Når ønsket prosjekt er åpnet, går du til Vis-menyen, klikker på databaseskjemaet og åpner deretter prosjektmappen fra Skjemavisningsmenyen.
- Høyreklikk på objektet som må testes, og klikk deretter på Opprett enhetstester. En dialogboks “Opprett enhetstester” åpnes og viser alle mappene og objektene til databaseprosjektet, og avkrysningsruten for det valgte objektet er merket av.
- Deretter oppretter du et nytt språktestprosjekt.
- Velg å enten sette inn enhetstesten i en eksisterende testklasse eller opprette en ny testklasse og klikke på OK.
- For å konfigurere prosjektet, vises dialogboksen Prosjektkonfigurasjon for å konfigurere testprosjektinnstillingene. Prosessen krever en databasetilkobling og data genereringsplan. Databasetilkoblingen er for å utføre testresultatet.
- Endelig konfigurerer du prosjektet og klikker på OK.
Sp # 6) Hva mener du med datadrevne tester?
Svar: Datadrevet testing er et begrep som brukes i testprosessen der testskripter under utførelse leser testdata og / eller utdataverdier fra datafiler (datapasser, Excel-filer, ADO-objekter, CSV-filer, ODBC-kilder) i stedet for å lese det samme hardt -kodede verdier hver gang. Testen hjelper testere med å sjekke effektiviteten til applikasjonen i håndtering av forskjellige innganger.
Sp # 7) Hva er databaseavtrekkeren, hvordan kan du verifisere at utløseren er utløst eller ikke, og kan du påberope avtrekkeren på forespørsel?
Svar:
Databaseutløser: En utløser er i utgangspunktet en lagret prosedyre som brukes for å opprettholde integriteten til dataene som finnes i databasen. Den kjøres automatisk for å svare på en bestemt hendelse i en tabell / visning i en database.
For å bekrefte at utløseren er avfyrt eller ikke; bruk spørringen i den vanlige revisjonsloggen vil vise utløseren til datatabellen.
Utløsere kan ikke påkalles på forespørsel, de påkalles når en tabell viser en handling (INSERT, DELETE & UPDATE) definert på den aktuelle tabellen.
Sp # 8) Hvordan tester du om en database er oppdatert eller ikke etter å ha skrevet inn dataene fra front-end applikasjonsgrensesnittet?
Svar: Det avhenger helt av applikasjonsgrensesnittet du bruker.
Dette er følgende måter å teste på:
- Du kan bare bekrefte fra front-end når applikasjonsgrensesnittet viser en visningsfunksjonalitet for dataene du skrev inn. Hovedsakelig utfører Black Box-testingeniører denne funksjonalitetsbekreftelsestesten på denne måten.
- Hvis applikasjonsgrensesnittet ikke gir visningsfunksjonalitet for dataene du skrev inn, kan du se etter databaseoppdatering ved å bruke relevant SQL / Oracle Query.
- Kontrollpunktfunksjonen til WinRunner / QTP kan også brukes til å se etter databaseoppdatering.
Sp # 9) Hvordan teste de lagrede prosedyrene?
Svar: Testingeniør må følge noen trinn for å teste Lagrede prosedyrer ,
- Først skal testingeniøren forstå kravet og også formålet med en bestemt lagret prosedyre.
- Deretter må du kontrollere om alle indekser, sammenføyninger, oppdateringer, slettinger er presise i forhold til tabellene nevnt i den lagrede prosedyren, og også sørge for at den lagrede prosedyren er i vanlig standardformat, som kommentarer, oppdatert av osv.
- Deretter, for forskjellige sett med inngangsparametre, verifiser prosedyren som kaller navn, anropsparametere og forventede svar.
- Kjør prosedyren manuelt med databaseklientprogrammer som TOAD, MySQL eller Query Analyzer.
- For å verifisere resultatene mot forventede verdier, kjør prosedyren på nytt ved å oppgi forskjellige parametere.
- Til slutt, automatiser testene med QTP.
Q # 10) Hva er sammenføyninger og nevner forskjellige typer sammenføyninger?
Svar: Join brukes til å kombinere to eller flere enn to tabeller og viser som et enkelt datasett.
I SQL er det følgende typer sammenføyninger :
- Inner Join
- Ytre sammenføyning
- Venstre bli med
- Right Join
I Oracle / PLSQL er det fire forskjellige typer sammenføyninger,
- Inner Join
- Venstre-ytre sammenføyning
- Right-Yuter Join
- Full-Yuter Bli med
Q # 11) Hva mener du med å indeksere og forklare forskjellige typer indekser?
Svar: En indeks er et databaseobjekt, opprettet i en kolonne i tabellen for å finne data raskere og mer effektivt (eller vi kan si at den brukes til å øke hastigheten på søk / spørsmål).
Ulike typer indekser er:
- B-treindeks
- Bitmap-indeks
- Klynget indeks
- Dekningsindeks
- Ikke-unik indeks
- Unik indeks
Q # 12) Hva mener du med DBMS?
Svar: En database er et strukturert datasett. Database Management System (DBMS) er et programvare som lager et kommunikasjonsnettverk mellom brukere, andre applikasjoner og databasen for å lagre, endre og trekke ut informasjon fra en database.
Kjente DBMS er My SQL, Postgre SQL, Microsoft SQL Server, Oracle, SAP og IBM DB2.
Q # 13) Hva mener du med DML?
Svar: Data Manipulation Language (DML) er et medlem av dataprogrammeringsspråk som gjør det mulig for oss å velge, sette inn, slette og oppdatere data i en database. DML er i utgangspunktet involvert i Structured Query Language (SQL) som gjør det mulig for brukere å hente og bruke data i en relasjonsdatabase.
Sp # 14) Hva mener du med DCL-kommandoer og forklarer hvilke typer kommandoer DCL bruker?
Svar: Data Control Language (DCL) er en komponent i SQL, som styrer bruken av data som er lagret i en database.
Det er to typer DCL-kommandoer:
- Stipend: Kommandoen gjør det mulig for brukere å få tilgang til privilegiet til databasen
- Oppheve: Slutt å tillate brukere å få tilgang til databasen
Sp # 15) Hva mener du med testing av hvit boks og svart boks?
Svar:
Black-box testing er en programvaretesteteknikk for å teste den funksjonelle oppførselen til et program uten å komme inn i dets applikasjons interne strukturer. Kjerneapplikasjonens kode / interne struktur og kunnskap om programmering er ikke nødvendig for black-box testing, men kjernekunnskap om applikasjonsfunksjonalitet er nødvendig for å teste applikasjonen.
White Box Testing (WBT) er også kjent som kodebasert testing eller strukturell testing for å teste den interne strukturen til et program. Når det gjelder testing av hvit boks, bør testeren ha god forståelse av den interne strukturen til en applikasjon, samt god kunnskap om programmeringsevner for å designe testtilfeller og den interne strukturen til en applikasjon.
Q # 16) Støtter QTP SQL-spørsmål, hvordan du bruker SQL-spørsmål i QTP ?
Svar: Selv om QTP ikke har noen innebygd funksjon for databasetilkobling, bruker testere VBScript-språk for å koble til og samhandle med databaser ved hjelp av ADODB-objekter.
ADODB-objekter er delt inn i fire forskjellige egenskaper / metoder som hjelper med å lykkes med å opprette en databaseforbindelse,
- Forbindelse: Nyttig for å danne en forbindelse med en database
- Kommando: Nyttig når du utfører en SQL-kommando (spørringer / lagrede prosedyrer)
- Enger: Nyttig for å hente en bestemt kolonne fra et platesett etter å ha utført en spørring / lagret prosedyre.
- Platesett: Brukes til å hente data fra en database
Spørsmål nr. 17) Hvilke SQL-setninger kan brukes i databasetesting?
Svar: Alle DDL-, DML-, DCL- og TCL-setninger for SQL kan brukes i databasetesting,
(i) DDL (Data Definition Language): Alle utsagn relatert til dette kan brukes til å definere databasestrukturen eller skjemaet.
Uttalelser: CREATE, ALTER, DROP, TRUNCATE, COMMENT, and RENAME
(ii) DML (Data Manipulation Language): Alle utsagn relatert til dette kan brukes til å administrere data innenfor skjemaobjekter.
Uttalelser: VELG, INSERT, OPPDATERE, SLETTE, SLETT, RING, FORKLAR PLAN og LÅS TABELL.
(iii) DCL (Data Control Language): GRANT-erklæring og TILBAKETALING.
(iv) TCL (Transaction Control Language): Alle uttalelser relatert til dette kan brukes til å håndtere endringene gjort av DML-uttalelser. Ved bruk av TCL kan utsagn grupperes sammen i logiske transaksjoner.
Uttalelser: KOMMITT, SAVEPOINT, ROLLBACK og SET TRANSAKSJON.
Spørsmål nr. 18) Hvordan gjør jeg datainnlastingstest i databasetesting?
Svar: For testing av datalast,
- Du må ha kunnskap om kildedatabase (datatabeller, kolonner, tilknyttede begrensninger, datatyper) og destinasjonsdatabase (datatabeller, kolonner, datatyper og begrensninger).
- Du må sjekke kompatibiliteten mellom kildedatabasen og destinasjonsdatabasen via DTS-pakken.
- Du må åpne tilsvarende DTS-pakke i SQL Enterprise Manager og kjøre DTS-pakken (hvis du bruker SQL Server).
- Sammenlign kolonnens data om kilde og mål.
- Kontroller antallet til rader med kilde og mål.
- Etter oppdatering av data i kildedatabasen, sjekk om endringene har blitt reflektert i destinasjonsdatabasen eller ikke.
- Sjekk om søppelkarakter og NULL.
- Test av databaselast, sjekk volumet til databaseserveren for å behandle spørsmålene, og sjekk også responstiden til databaseserveren og klienten.
Spørsmål nr. 19) Er en 'En rask databaseinnhentingsrate' et testbart krav?
Svar: Nei. Jeg tror ikke det fordi kravet ser ut til å være uklart. SRS skal tydelig vise ytelses- eller transaksjonskravene, dvs. det skal nevnes som; “Databaseinnhentingsfrekvens på 5 mikrosekunder”.
Spørsmål nr. 20) Hvordan kan du teste en SQL-spørring i QTP uten å involvere databasekontrollpunkter?
Svar: Den gitte skriptprosedyren nedenfor hjelper oss med å koble til databasen der vi kan teste begge; databasen og spørsmålene.
til) Skriptprosedyren for databasetilkobling,
db_connect (“query1”, DRIVER = {driver name}; SERVER = server_name;
UID = uidnavn; PWD = passord; DBQ = database_name “);
b) Skriptprosedyren for å utføre spørringen,
db_excecute_query (“query1 ″,” skriv spørring du vil utføre ”);
-Forhold som skal nevnes-
c) Skriptprosedyren for å koble fra forbindelsen til databasen,
db_disconnect ('spørring');
Spørsmål nr. 21) Hva kreves for å skrive gode testsaker i databasetesting?
Svar: Kunnskap om følgende ting kreves før du skriver databasetesttilfellene,
- Forstå applikasjonen fullstendig og også funksjonens krav til applikasjonen.
- Sjekk ut andre enheter som har blitt brukt i et program som back-end databasetabeller, sammenføyninger mellom tabellene, markører (hvis noen), utløsere (hvis noen), lagrede prosedyrer (hvis noen), inngangsparameter og utdata parametere for utvikling det kravet.
- Etter innsamling av all nødvendig informasjon, skriv ned testsaken med forskjellige inngangsverdier for å undersøke alle ressursene.
Å skrive testsaker for back-end-testing er motsatt av funksjonstesting, man bør bruke testboksteknikken for hvit boks.
Q # 22) Hva testes på nytt og hvordan det er forskjellig fra datadrevet testing ?
Svar: Etter utførelsen av testen når det gjelder å finne feilen som allerede er oppdaget og løst, kalles re-kjøring av den samme testen med forskjellige inngangsverdier for å bekrefte at den opprinnelige feilen er fjernet, omprøving eller bekreftelsestesting.
Test på nytt kalles også Data-Driven Testing, men forskjellen mellom begge er at Retesting er en manuell testprosess mens applikasjonstesting utført med hele det nye datasettet.
Datadrevet testing (DDT): Det er en automatiseringsprosess hvor en applikasjon vil bli testet med flere testdata. Det er enkelt og enkelt enn å teste på nytt der tester bare sitter foran systemet og angir forskjellige nye inngangsverdier manuelt fra frontgrensesnittet, det er virkelig en kjedelig teknikk.
Spørsmål nr. 23) Hva er typene datadrevet testing?
Svar:
Det er fire typer datadrevet testing:
- Innlevering av dynamiske testdata via tastaturet (nøkkeldrevet test): I noen tilfeller tester testere et nytt program med forskjellige inngangsverdier for å validere beregningen via dynamisk innlevering. Så, for å sende inn inngangsverdien, kan testere bruke følgende funksjon i TSL; skript– create_input_dialog (“label”);
- Datadrevne tester via flate filer (.txt, .doc): I noen tilfeller gjør testere omprøving ved å vurdere dataene til den flate filen. Testere samler de flate filene fra gamle databaser / kunder.
- Datadrevne tester via frontend-objekter: I noen tilfeller lager testere automatiseringsskript ved å vurdere frontverdens objektverdier, for eksempel liste, meny, tabell, datavindu, ocx, etc.
- Datadrevne tester via Excel-ark: I noen tilfeller tar testere hjelp av denne datadrevne testen for å kjøre skriptet for flere innganger. Disse flere inngangene ligger i kolonner i et Excel-ark. Vi må samle disse testdataene fra backend-tabellene.
Q # 24) Hvordan skriver du et spørsmål for å få den nest største verdien fra en gitt kolonne i en tabell?
Svar: Dette er et spørsmål for å få den nest største verdien fra en gitt kolonne i en tabell.
SELECT MAX(COLUMN_NAME) FROM TABLE_NAME WHERE COLUMN_NAME <(SELECT MAX(COLUMN_NAME) FROM TABLE_NAME);
For eksempel,
For å få de nest største karakterene fra 'Merker' -kolonnen i en 'Students' -tabell
SELECT Max(Marks) from Students WHERE Marks<(SELECT Max(Marks) from students);
Q # 25) Hvordan skrive et spørsmål for å få 10thhøyeste lønn fra et arbeidstabell?
Svar: Dette er et spørsmål om å få den høyeste lønnen fra en ansattes tabell,
SELECT * FROM Employee Emp1 WHERE ( n ) = ( SELECT COUNT( DISTINCT ( Emp2.Employee_Salary ) ) FROM Employee Emp2 WHERE Emp2.Employee_Salary >= Emp1.Employee_Salary );
Her kan du erstatte dem med et hvilket som helst nummer.
For eksempel, Hvis du vil få 10. høyeste lønn, erstatter du n med 10.
SELECT * FROM Employee Emp1 WHERE (10) = ( SELECT COUNT( DISTINCT ( Emp2.Employee_Salary ) ) FROM Employee Emp2 WHERE Emp2.Employee_Salary >= Emp1.Employee_Salary );
Spørsmål nr. 26) Hvordan skriver jeg testtilfeller fra krav, betyr kravene den nøyaktige funksjonaliteten til AUT?
Svar: Ja, kravene skal indikere den eksakte funksjonaliteten til AUT.
Å gjøre slik,
- Undersøk kravet om å forstå den generelle funksjonaliteten.
- Deretter bestemmer du hvilke testdesignmetoder som er egnet til å skrive test case - Black Box testdesignmetoder som; Partisjonering av ekvivalens, analyse av grenseverdier, feilsetting og grafering av årsakseffekt.
- Når du bestemmer deg for hvilken testdesignmetode som passer, skriver du testtilfellene dine i kravanalyse og designfase.
På denne måten vil du sørge for at alle kravene er testbare.
Spørsmål nr. 27) Hva er testscenarioet for å teste en database migrert fra en SQL Server til en annen?
Svar: Først og fremst må vi sjekke hva alle forbedringer og endringer skjedde med SQL Server der vi planlegger å migrere.
Neste, utforme prøvesaken i henhold til følgende vurdering,
- En datatype som er brukt.
- Lengden på datafeltet til SQL Server (serveren vi migrerer dataene til) skal være den samme som SQL Server der vi tar ut dataene.
- Hver oppgave skal organiseres riktig.
Q # 28) Hva står RDBMS for og hva er de viktigste RDBMS som brukes av SQL?
Svar: RDBMS står for Relational Database Management Systems. Viktige RDBMS som er involvert i SQL inkluderer Sybase, Oracle, Access, Ingres, Microsoft SQL Server, etc.
Sp # 29) Forklar ytelsestesting og flaskehalsene på den.
Svar: Prestasjonstesting er en programvaretesteteknikk for å bestemme hvordan et system ytelse når det gjelder hastighet, følsomhet og stabilitet under tung arbeidsbelastning. Denne testingen krever dyre verktøy og velutdannede og erfarne testere for drift.
Q # 30) Hva er CMMI og beskriver forskjellige nivåer av CMM?
Svar: CMMI står for Capability Maturity Model Integration er en opplærings- og evalueringsmodell for prosessutvikling av ulike forretningsprosesser innen programvareteknikk.
Fem CMM modenhetsnivåer for en organisasjon er:
- Første: På dette nivået har ikke organisasjoner noen verifisert teknikk og miljø, så vanligvis går organisasjoner over tid og tidsplan.
- Gjentas: På dette nivået har organisasjoner grunnleggende teknikker og retningslinjer for å begrense kostnadene og planlegge tiden, i stand til å gjenta det samme i neste lignende prosjekt.
- Definert: På dette nivået er alle teknikker godt organisert og forklart klar og standard form.
- Fikk til: På dette nivået er organisasjoner mye mer utviklet enn det definerte nivået. Her blir teknikker kontaktet ved hjelp av statistisk og annen kvantitativ teknikk.
- Optimalisering: Organisasjoner forsøker bestemt å utvikle ytelse via moderne teknisk fremgang.
Spørsmål nr. 31) Hva er meningen med posten i en database?
Svar: I en database er en post settet med verdier / felt for en bestemt enhet.
For eksempel, Office_Employee Record, Book Record, etc.
Vi håper du liker disse detaljerte spørsmålene om databaseintervjuer med svar. Gi oss beskjed i tilfelle spørsmål.
konverter char til int i c ++
Anbefalt lesing
- Intervju Spørsmål og svar
- ETL Testing Intervju Spørsmål og svar
- Databasetesting med JMeter
- Noen interessante spørsmål om intervjuer med programvaretesting
- 25 Beste Agile Testing Intervju Spørsmål og svar
- Topp 20 viktigste API-tester Intervju spørsmål og svar
- Spørsmål og svar om programvaretesting (del 1)
- Topp 30 sikkerhetstestintervju og spørsmål