Test del database tramite Selenium e JDBC: come connettersi?
⚡ Riepilogo intelligente
Test del database tramite Selenium si basa su JDBC, perché WebDriver stesso convalida solo il livello del browser. Questi passaggi mostrano come aprire un MySQL stabilire una connessione, eseguire query SQL, leggere un ResultSet e verificare i dati memorizzati.

Connessione al database in Selenium
Selenium Webdriver è limitato a Collaudo le tue applicazioni utilizzando il browser. Usare Selenium Webdriver per la verifica del database è necessario utilizzare JDBC (“Java Connettività database”).
JDBC (Java Connettività al database) è a SQL API di livello che consente di eseguire istruzioni SQL. È responsabile della connettività tra Java Linguaggio di programmazione e un'ampia gamma di database. L'API JDBC fornisce le seguenti classi e interfacce
- Driver Manager
- Guidatore
- Connessione
- dichiarazione
- Set di risultati
- SQLException
Come connettere il database in Selenium
Per testare il tuo database utilizzando Selenium, è necessario osservare i seguenti 3 passaggi
Passaggio 1) Stabilire una connessione al database
Per stabilire una connessione al database la sintassi è
DriverManager.getConnection(URL, "userid", "password" )
Qui,
- Userid è il nome utente configurato nel database
- Password dell'utente configurato
- URL è nel formato jdbc:< dbtype>://indirizzoip:numero_porta/nome_db”
- - Il driver per il database a cui stai tentando di connetterti. Per connettersi al database Oracle, questo valore sarà "oracle". Per connettersi al database con nome "emp" in MySQL URL sarà jdbc:mysql://localhost:3036/emp
E il codice per creare la connessione assomiglia
Connection con = DriverManager.getConnection(dbUrl,username,password);
È inoltre necessario caricare il driver JDBC utilizzando il codice
Class.forName("com.mysql.jdbc.Driver");
Passaggio 2) Invia query al database
Una volta stabilita la connessione, è necessario eseguire le query.
È possibile utilizzare l'oggetto Statement per inviare query.
Statement stmt = con.createStatement();
Una volta creato l'oggetto istruzione, utilizzare il metodoexequery per eseguire le query SQL
stmt.executeQuery(select * from employee;);
Passaggio 3) Elaborare i risultati
I risultati della query eseguita vengono archiviati nell'oggetto ResultSet.
Java fornisce moltissimi metodi avanzati per elaborare i risultati. Alcuni dei metodi sono elencati di seguito
Esempio di test del database con Selenium
Passo 1) Installazione MySQL server and MySQL banco di lavoro
Consulta la guida completa a Mysql e Mysql Workbench Qui.
Durante l'installazione MySQL Server, si prega di notare il database
- Nome utente
- Password
- Numero di porta
Sarà richiesto in fasi successive.
MySQL Workbench semplifica l'amministrazione del database senza la necessità di codificare SQL. Tuttavia, puoi anche utilizzare il file MySQL Terminale per interagire con il database.
Passo 2) In MySQL WorkBench, connettiti al tuo MySQL server
Nella schermata successiva,
- Seleziona Istanza locale di MySQL
- Inserisci il numero di porta
- Inserire username
- "Inserisci la password"
- fare clic su OK
Passo 3) Per creare un database,
- Fare clic sul pulsante Crea schema
- Immettere il nome dello schema/database
- Fai clic su Applica
Passo 4) Nel menu del navigatore,
- Fare clic su Tabelle, sotto il database emp
- Inserisci il nome della tabella come dipendente
- Inserisci i campi come Nome ed Età
- Fai clic su Applica
Vedrai il seguente pop-up. Fai clic su Applica
Passo 5) Creeremo i seguenti dati
| Nome | Età |
|---|---|
| Top | 25 |
| Nick | 36 |
| Bill | 47 |
Per creare dati nella tabella
- Nel navigatore, seleziona la tabella dei dipendenti
- Nel riquadro di destra, fare clic su Editor modulo
- Inserisci Nome ed Età
- Fai clic su Applica
Ripetere il processo finché non vengono creati tutti i dati
Passo 6) Scarica la MySQL Connettore JDBC Qui.
Passo 7) Aggiungi il Jar scaricato al tuo progetto
- Fai clic con il pulsante destro del mouse sul tuo file Java File. Quindi fai clic su Percorso di compilazione → Configura percorso di compilazione
- Seleziona le biblioteche
- Fare clic su aggiungi JAR esterni
- Puoi vedere MySQL connettore Java nella tua libreria
- Fare clic su Apri per aggiungerlo al progetto
Passo 8) Copia il seguente codice nell'editor
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(); } }
Passo 9) Esegui il codice e controlla l'output
Gli stessi passaggi si applicano a qualsiasi motore relazionale.
Driver JDBC e stringhe di connessione per i database più diffusi
MySQL è solo un'opzione. Il modello JDBC rimane identico su tutti i motori: le importazioni, la chiamata Statement e il ciclo ResultSet non cambiano. Solo l'artefatto del driver e il URL differiscono, quindi utilizzare la tabella seguente quando l'applicazione in fase di test viene eseguita su un database diverso.
| Banca Dati | Classe di conducente | Esempio di connessione URL | Porta predefinita |
|---|---|---|---|
| MySQL | com.mysql.cj.jdbc.Driver | jdbc:mysql://localhost:3306/emp | 3306 |
| PostgreSQL | Driver di org.postgresql | jdbc:postgresql://localhost:5432/emp | 5432 |
| Oracle | oracle.jdbc.OracleGuidatore | jdbc:oracle:thin:@localhost:1521:orcl | 1521 |
| SQL Server | com.microsoft.sqlserver.jdbc.SQLServerDriver | jdbc:sqlserver://localhost:1433;databaseName=emp | 1433 |
I numeri di porta sono la causa della maggior parte dei primi errori. Un errore di connessione rifiutata significa quasi sempre che la porta nella URL non corrisponde alla porta su cui il server è effettivamente in ascolto. Verifica la configurazione del server prima di dare per scontato il valore predefinito.
Ogni driver viene distribuito come un singolo file JAR che va aggiunto al percorso di compilazione esattamente come mostrato nel passaggio 7. Ogni motore elencato sopra si registra automaticamente, quindi non è necessaria alcuna riga Class.forName. Ciò significa che un singolo metodo di supporto può servire tutti gli ambienti a cui è destinata la suite.












