Weet hoe u databasetests met selenium moet uitvoeren - een stapsgewijze handleiding



Dit artikel over databasetests met Selenium geeft u inzicht in hoe u een database zoals MySQL kunt testen met behulp van een van de geweldige testtools genaamd Selenium.

Terwijl de wereld evolueert naar big data, speelt de database een belangrijke rol bij het verwerken van de records en het bijhouden van de volgorde ervan. Om er zeker van te zijn dat er geen defecten zijn tijdens het verwerken van de gegevens, is databasetesten essentieel. In is zo'n tool die helpt bij het bieden van functionaliteiten om de database te testen. In dit artikel zal ik u inzicht geven in het uitvoeren van databasetests met Selenium.

Hieronder staan ​​de onderwerpen die ik in dit artikel zal behandelen:





Java-databaseverbinding

JDBC is een van de standaard voor database-onafhankelijke connectiviteit tussen de programmeertaal Java en een breed scala aan databases. Met deze applicatieprogramma-interface (API) kunt u de toegangsverzoekinstructies coderen in een Structured Query Language (SQL) . Ze worden vervolgens doorgegeven aan het programma dat de database beheert. Het gaat voornamelijk om het openen van een verbinding, het maken van een SQL-database, het uitvoeren van SQL-queries en vervolgens aankomen bij de output.



We kunnen JDBC API gebruiken om toegang te krijgen tot tabelgegevens die zijn opgeslagen in elke relationele database. Met behulp van deze JDBC API kunnen we gegevens uit de databases opslaan, bijwerken, verwijderen en ophalen. Het is vergelijkbaar met de Open Database Connectivity (ODBC) van Microsoft.

Veelvoorkomende JDBC-componenten

De API biedt de volgende interfaces en klassen & minus

  • DriverManager: Het wordt gebruikt om een ​​lijst met databasestuurprogramma's te beheren. Deze driver herkent een bepaald subprotocol onder JDBC om een ​​databaseverbinding tot stand te brengen.
  • Bestuurder: Het is een interface die de communicatie met de databaseserver afhandelt.
  • Verbinding: Het is een interface die bestaat uit alle methoden die nodig zijn om verbinding te maken met een database. Het verbindingsobject vertegenwoordigt een communicatiecontext waarin de volledige communicatie met de database alleen via een verbindingsobject verloopt.

Laten we nu naar het volgende onderwerp gaan en de stappen bekijken die nodig zijn om een .



Stappen om een ​​JDBC-applicatie te maken

Om een ​​JDBC-applicatie te maken, moeten we een paar stappen volgen. Laten we eens kijken wat ze zijn.

Stappen om JDBC-applicatie te maken - Geavanceerde Java-zelfstudie - Edureka

  1. Importeer de pakketten: Ten eerste moet u de pakketten opnemen die de JDBC-klassen bevatten die voornamelijk nodig zijn voor het programmeren van databases.
  2. Registreer het JDBC-stuurprogramma: Hier moet u een stuurprogramma initialiseren, zodat u een communicatiekanaal met de database kunt openen. U kunt zich registreren in de database met behulp van de onderstaande opdracht, zoals:
    Klasse.forName ('Com.mysql.jdbc.Driver')// klasse.forName laden de Bestuurder klasse
  3. Open een verbinding: Na de registratie van de bestuurder kunt u de getConnection () methode om een ​​Connection-object te maken, dat een fysieke verbinding met de database vertegenwoordigt.
  4. Voer een zoekopdracht uit: Hier moet u een object van het type ‘ Uitspraak' voor het bouwen en verzenden van een SQL-instructie naar de database.
  5. Extraheer gegevens uit de resultatenset: Om de gegevens uit de resultatenset op te halen, moet u de juiste gebruiken getXXX () methode.
  6. Ruim het milieu op: Hier moet u expliciet alle databasebronnen sluiten die afhankelijk zijn van JVM-garbagecollection.

Als u wilt weten hoe u een JDBC-applicatie maakt en queries uitvoert, kunt u dit artikel lezen op . Laten we nu eens kijken hoe we databasetests kunnen uitvoeren met Selenium. Voordat ik begin, laten we eerst eens kijken wat het is .

Wat is Selenium WebDriver?

is een van de draagbare open source frameworks die worden gebruikt om het testen van webapplicaties te automatiseren. Het is flexibel als het gaat om het testen van functionele en regressietestgevallen. Selenium-testscripts kunnen in verschillende programmeertalen worden geschreven, zoals , , C # en nog veel meer. Al deze seleniumtestscripts kunnen in verschillende browsers worden uitgevoerd, zoals Chrome, Safari, Firefox, Opera en bieden ook ondersteuning op verschillende platforms zoals Windows, Mac OS, Linux, Solaris. Selenium helpt ook bij het creëren van robuuste, browsergebaseerde regressie en voer tests uit.

Ik hoop dat je de grondbeginselen van selenium hebt begrepen. Laten we nu verder gaan en begrijpen hoe databasetests kunnen worden uitgevoerd met Selenium.

Database testen met Selenium

Over het algemeen ondersteunt Selenium niet Database testen, toch kan het gedeeltelijk worden gedaan met JDBC en ODBC. In dit artikel verbind ik in feite de programma met een database om de gegevens op te halen en te verifiëren met TestNG .

Laten we een stapsgewijze procedure bekijken voor het uitvoeren van databasetests met Selenium.

hoe iterator te gebruiken in java

Stapsgewijze procedure voor het testen van databases

Stap 1: U moet een database aanmaken. Als u wilt leren hoe u MySQL-opdrachten uitvoert, kunt u dit artikel lezen op MySQL-zelfstudie .

Stap 2: Als u klaar bent met het maken van tabellen en het invoegen van waarden, kunt u verbinding maken met de database.

Stap 3: Nadat de verbinding tot stand is gebracht, kunt u de queries uitvoeren en de records die in uw database aanwezig zijn, verwerken. U kunt verwijzen naar artikel om te begrijpen hoe de query's moeten worden uitgevoerd en de resultatenset moet worden verwerkt.

Nu, het interessante is dat ik ga integreren TestNG met JDBC om databasetests uit te voeren. Laten we eens kijken hoe we dat kunnen doen met behulp van het onderstaande programma.

pakket co.edureka.pages import org.testng.annotations.AfterTest import org.testng.annotations.BeforeTest import org.testng.annotations.Test import java.sql.Connection import java.sql.DriverManager import java.sql.ResultSet import java .sql.Statement public class DatabaseTesingDemo {// Connection object static Connection con = null // Statement object private static Statement stmt // Constante voor database-URL public static String DB_URL = 'jdbc: mysql: // localhost / emp' // Constante voor Database gebruikersnaam public static String DB_USER = 'your_user' // Constante voor Database Password public static String DB_PASSWORD = 'your_password' @BeforeTest public void setUp () gooit Uitzondering {try {// Maak de databaseverbinding String dbClass = 'com.mysql .cj.jdbc.Driver 'Class.forName (dbClass) .newInstance () // Krijg verbinding met DB Connection con = DriverManager.getConnection (DB_URL, DB_USER, DB_PASSWORD) // Statement-object om de SQL-instructie naar de Database te sturen stmt = con.createStatement ()} vangst (Uitzondering e) {e.printStackTrace ()}} @Test public void test () {try {String query = 'select * from workers' // Haal de inhoud van de userinfo-tabel op uit DB ResultSet res = stmt.executeQuery (query) // Druk het resultaat af totdat alle records zijn afgedrukt // res.next () geeft true terug als er een volgende record is, anders retourneert false while (res.next ()) {System.out.print (res.getString (1) ) System.out.print ('' + res.getString (2)) System.out.print ('' + res.getString (3)) System.out.println ('' + res.getString (4))} } catch (uitzondering e) {e.printStackTrace ()}} @AfterTest public void tearDown () gooit uitzondering {// DB-verbinding sluiten if (con! = null) {con.close ()}}}

In de bovenstaande code heb ik de database-URL, de database-gebruikersnaam en het wachtwoord opgegeven om toegang te krijgen tot de database.

Vervolgens heb ik gebruiktVóór de testannotatie om de acties uit te voeren die moeten plaatsvinden voordat de testcases worden uitgevoerd. In het bovenstaande voorbeeld breng ik een verbinding tot stand met de database door het MySQL bestuurder. Dit komt omdat ik gebruik MySQL-database . Daarna maak ik een statement-object.

Zodra de databaseverbinding is voltooid, is de volgende stap het uitvoeren van de query's en het verwerken van de resultaten. Alle procedures voor het uitvoeren van de queries en het afdrukken van de resultaten en het verwerken van de records maken dus deel uit van de test. Dus het zal worden gevolgd doorTestannotatie van TestNG .

Na het uitvoeren van de test is de laatste stap het verbreken van de databaseverbinding. Daarom wordt het gevolgd doorAfterTestannotatie. Dit is hoe u de taken dienovereenkomstig moet splitsen. Wanneer u de bovenstaande code als TestNG-test uitvoert, worden alle details in de database afgedrukt en worden de testgevallen uitgevoerd.

Uw output zou er als volgt uit moeten zien:

[RemoteTestNG] gedetecteerd TestNG versie 6.14.2 100 18 Zara Ali 101 25 Mahnaz Fatma 102 30 Zaid Khan 103 28 Sumit Mittal GESLAAGD: test ====================== ========================= Standaardtest Tests worden uitgevoerd: 1, fouten: 0, overslaan: 0 =========== ==================================== ============== ================================= Standaard suite Totaal aantal uitgevoerde tests: 1, fouten: 0, overslaan: 0 == ===============================================

Dus dat ging allemaal over databasetesten met Selenium. Ik hoop dat je de concepten hebt begrepen en dat het een toegevoegde waarde heeft voor je kennis. Als je nu meer inzicht wilt krijgen in Selenium, kun je het artikel lezen op .

Als je dit 'Database testen met Selenium ' relevant, bekijk de door Edureka, een vertrouwd online leerbedrijf met een netwerk van meer dan 250.000 tevreden leerlingen verspreid over de hele wereld.

Heeft u een vraag voor ons? Vermeld het in het commentaargedeelte van het artikel Database testen met behulp van Selenium en we nemen contact met u op.