Databasetest vha Selenium: Hvordan forbinder man?

Databaseforbindelse i Selenium

Selenium Webdriver er begrænset til Test dine applikationer ved hjælp af browser. At bruge Selenium Webdriver til databasebekræftelse skal du bruge JDBC ("Java Databaseforbindelse").

JDBC (Java Database Connectivity) er en SQL niveau API, der giver dig mulighed for at udføre SQL-sætninger. Det er ansvarligt for forbindelsen mellem Java Programmeringssprog og en bred vifte af databaser. JDBC API'en giver følgende klasser og grænseflader

  • Driver Manager
  • Chauffør
  • Forbindelse
  • Statement
  • Resultat Indstil
  • SQLException

Sådan forbinder du databasen Selenium

For at teste din database vha Selenium, skal du overholde de følgende 3 trin

Tilslut databasen Selenium

Trin 1) Opret forbindelse til databasen

For at oprette forbindelse til databasen er syntaksen

DriverManager.getConnection(URL, "userid", "password" )

Her,

  • Bruger-id er det brugernavn, der er konfigureret i databasen
  • Adgangskode for den konfigurerede bruger
  • URL er af formatet jdbc:< dbtype>://ipadresse:portnummer/db_navn"
  • - Driveren til den database, du forsøger at forbinde. For at oprette forbindelse til oracle database vil denne værdi være "oracle" For at oprette forbindelse til database med navnet "emp" i MYSQL URL vil bejdbc:mysql://localhost:3036/emp

Og koden til at skabe forbindelse ser ud

Connection con = DriverManager.getConnection(dbUrl,username,password);

Du skal også indlæse JDBC-driveren ved hjælp af koden

Class.forName("com.mysql.jdbc.Driver");

Trin 2) Send forespørgsler til databasen

Når forbindelsen er oprettet, skal du udføre forespørgsler.

Du kan bruge Statement Object til at sende forespørgsler.

Statement stmt = con.createStatement();

Når sætningsobjektet er oprettet, skal du bruge executeQuery-metoden til at udføre SQL-forespørgslerne

stmt.executeQuery(select *  from employee;);

Trin 3) Bearbejd resultaterne

Resultater fra den udførte forespørgsel gemmes i ResultSet Object.

Java giver masser af avancerede metoder til at behandle resultaterne. Få af metoderne er anført nedenfor

Bearbejd resultaterne

Eksempel på databasetest med Selenium

Trin 1) Installer MySQL Server og MySQL Workbench

Tjek den komplette guide til Mysql & Mysql Workbench link.

Under installationen MySQL Server, bemærk venligst databasen

  • Brugernavn
  • Adgangskode
  • Portnummer

Det vil være påkrævet i yderligere trin.

MySQL Workbench gør det nemt at administrere databasen uden behov for at kode SQL. Du kan dog også bruge MySQL Terminal til at interagere med databasen.

Trin 2) In MySQL WorkBench, opret forbindelse til din MySQL Server

Databasetest med Selenium

På næste skærmbillede

  1. Vælg Lokal forekomst af MySQL
  2. Indtast portnummer
  3. Indtast brugernavn
  4. Indtast adgangskode
  5. klik på OK

Databasetest med Selenium

Trin 3) For at oprette en database,

  1. Klik på knappen Opret skema
  2. Indtast navn på skema/database
  3. Klik på Anvend

Databasetest med Selenium

Trin 4) I navigatormenuen,

  1. Klik på Tabeller under emp-databasen
  2. Indtast tabelnavn som medarbejder
  3. Indtast felter som navn og alder
  4. Klik på Anvend

Databasetest med Selenium

Du vil se følgende pop-up. Klik på Anvend

Databasetest med Selenium

Trin 5) Vi vil oprette følgende data

Navn Alder
Top 25
Nick 36
Bill 47

For at oprette data i tabellen

  1. I navigator skal du vælge medarbejdertabellen
  2. Klik på Form Editor i højre rude
  3. Indtast navn og alder
  4. Klik på Anvend

Databasetest med Selenium

Gentag processen, indtil alle data er oprettet

Databasetest med Selenium

Trin 6) Download MySQL JDBC stik link.

Databasetest med Selenium

Trin 7) Tilføj den downloadede Jar til dit projekt

  1. Højreklik på din Java Fil. Klik derefter på Byg stià Konfigurer byggesti
  2. Vælg bibliotekerne
  3. Klik på tilføj eksterne JAR'er
  4. Du kan se MySQL connector java i dit bibliotek
  5. Klik på åben for at tilføje den til projektet

Databasetest med Selenium

Trin 8) Kopier følgende kode ind i editoren

Package  htmldriver;		
import  java.sql.Connection;		
import  java.sql.Statement;		
import  java.sql.ResultSet;		
import  java.sql.DriverManager;		
import  java.sql.SQLException;		
public class  SQLConnector {				
    	public static void  main(String[] args) throws  ClassNotFoundException, SQLException {													
				//Connection URL Syntax: "jdbc:mysql://ipaddress:portnumber/db_name"		
                String dbUrl = "jdbc:mysql://localhost:3036/emp";					

				//Database Username		
				String username = "root";	
                
				//Database Password		
				String password = "guru99";				

				//Query to Execute		
				String query = "select *  from employee;";	
                
         	    //Load mysql jdbc driver		
           	    Class.forName("com.mysql.jdbc.Driver");			
           
           		//Create Connection to DB		
            	Connection con = DriverManager.getConnection(dbUrl,username,password);
          
          		//Create Statement Object		
        	   Statement stmt = con.createStatement();					
       
       			// Execute the SQL Query. Store results in ResultSet		
         		ResultSet rs= stmt.executeQuery(query);							
         
         		// While Loop to iterate through all data and print results		
				while (rs.next()){
			        		String myName = rs.getString(1);								        
                            String myAge = rs.getString(2);					                               
                            System. out.println(myName+"  "+myAge);		
                    }		
      			 // closing DB Connection		
      			con.close();			
		}
}

Trin 8) Udfør koden, og kontroller outputtet

Databasetest med Selenium

Selenium Resumé af databasetest

Trin 1) Opret forbindelse til databasen ved hjælp af metoden.

DriverManager.getConnection(URL, "userid", "password")

Trin 2) Opret forespørgsel til databasen ved hjælp af Statement Object.

Statement stmt = con.createStatement();

Trin 3) Send forespørgslen til databasen ved hjælp af execute query og gem resultaterne i ResultSet-objektet.

ResultSet rs = stmt.executeQuery(select * from employee;);

Java giver masser af indbyggede metoder til at behandle> SQL-output ved hjælp af ResultSet Object