Selen Easy

som vi vet, må hver applikasjon opprettholde en database Som MIN SQL, Oracle eller andre databaser for å lagre alle dataene. Og hvor As Selenium Webdriver brukes til testing av webapplikasjoner, og vi utfører mange operasjoner som å sende inn informasjon og noen ganger hente informasjon og validere dem.

i selenium-skript, når Det er behov for Å få Dataene fra databasen, må vi kanskje bruke Apier som bidrar til å samhandle med database som JDBC.

Java Database Connectivity(JDBC) er En Java API som brukes til å koble til Og samhandle Med Databasen.

hvorfor bruker VI JDBC I STEDET ODBC?

ODBC er utviklet Og skrevet I C, som er plattformuavhengig. hvor SOM JDBC API er en spesifikasjon gir sett med grensesnitt som er skrevet og utviklet I Java programmeringsspråk.

Slik Kobler du til databasen VED HJELP AV JDBC?

Nedenfor er Trinnene For Å Koble til databasen, før du fortsetter, må Du ha MySQL-Kontakt. Du Kan laste ned Herfra Last Ned MySQL Connector Jar og legge den bygge banen som vi legger selen webdriver jar.

1. Last Inn Og Registrer Sjåføren
2. Etablere Forbindelse.
3. Opprette Setningsobjekt
4. Utfør Setningen
5. Lukke forbindelsen.

1. Last Inn Og Registrer Driveren:

for å registrere Driveren Laster Vi Driverklassen ved hjelp av forName () – metoden.

forName() er den statiske fabrikkmetoden som finnes i forhåndsdefinert klasse kalt «Klasse». Denne metoden laster klassen som er nevnt som parameter.

Class.forName("com.mysql.jdbc.Driver");// class.forName load the Driver class

Internt registrerer Denne Driverklassen driveren Ved hjelp av statisk metode kalt registerDriver().

2. Etablering Av Tilkobling:

for å etablere forbindelse med databasen kaller vi statisk metode kalt getConnection(…) tilstede I DriverManager Klasse. Denne metoden inneholder tre argumenter av strengtype. dvs.url, brukernavn og passord

DriverManager.getConnection("jdbc:mysql://localhost:3306/Employee","root","root"); 

URL inneholder «jdbc(hovedprotokoll):mysql(underprotokoll for mySql)://lokal vert:3306(undernavn for mysql (vert:prot))/Ansatt(database)» og denne metoden returtype Er Tilkoblingsobjekt dvs.,

Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/Employee","root","root"); 

3. Opprette Setningsobjekt:

for å opprette setningsobjekt må vi ringe en metode som kalles createStatement () som er til stede i Tilkoblingsgrensesnittet.

con.createStatement();

og denne metoden returnerer Setningsobjekt, og det er ingen argumentmetode.

Statement st= con.createStatement();

4.Utføre Spørringer:

for å utføre spørringer finnes det ulike metoder i Setningen Grensesnitt for å hente poster og oppdatere poster.

Henter poster:
for å utføre select queries(for henting av poster) kaller vi en metode som kalles executeQuery(String qry) ved å ta streng som parameter.

st.executeQuery("Select * from Employee");

denne metoden returnerer Resultatset-objektet.

Resultset rs= st.executeQuery("Select * from Employee");// once executeQuery() executes the query and stores the records in to ResultSet object. 

nå må Vi få postene Fra Resultatset-objektet. For å få tilgang til resultatset-objektet bruker den en metode som kalles next () som presenterer I Resultatset-Grensesnittet.

Som standard Resultatset referanse ‘rs’ peker til før første rad. den flytter rs til neste rad og returnerer sann. Når den returnerer sant, henter vi dataene i første rad. next () returnerer false nar rs peker til etter siste rad. denne neste () vil gjenta utførelsen ved hjelp av while loop til den returnerer false.

for å få data fra rader bruker vi getXxx(..) tar streng eller heltall som parametere. Her betyr heltall kolonneposisjon og streng betyr kolonnenavn på posten. xxx indikerer primitive datatyper eller strengobjekt.

while(rs.next()) {int EmpId= rs.getInt("EmpId");String EmpName= rs.getString("EmpName");String EmpAddress=rs.getString(3);Double EmpSal= rs.getDouble(4);String EmpDept=rs.getString("EmpDept");System.out.println(EmpId+"\t"+EmpName+"\t"+EmpAddress+"\t"+EmpSal+"\t"+EmpDept);}

Oppdatere poster:
for å oppdatere poster i en tabell bruker vi en metode som kalles executeUpdate(String str)

st.executeUpdate("update Employee set EmpName='Robert' where EmpId=2");

som returnerer heltallsverdi som hvor mange poster som er oppdatert.

int result = st.executeUpdate("update Employee set EmpName='Robert' where EmpId=2");System.out.println("number of records updated is" +result);

5. Lukke Forbindelsen:

når utførelsen av alle setningene ble fullført, må vi lukke alle tilkoblingene ved hjelp av metode kalt close() tilstede i Tilkoblingsgrensesnittet

con.close();

Database som vi bruker for eksempel, har følgende poster i Tabellen ‘Ansatt’
databasetesting med selen

nå er det på tide å se på under enkelt eksempelprogram og senere hopper vi inn i rammeeksempel : – I neste tutorial, vil vi prøve å ta et eksempel som vil ta parametrene (som database legitimasjon, miljø detaljer etc) fra egenskaper filer og fortsette testen basert på parametere som er angitt.

/** * Created by VISISHTA on 12/17/2015. */import org.testng.annotations.AfterClass;import org.testng.annotations.BeforeClass;import org.testng.annotations.Test;import java.sql.*;public class SeleniumDataBaseTesting { private Connection connection; private static Statement statement; private static ResultSet rs; @BeforeClass public void setUp() { String databaseURL = "jdbc:mysql://localhost:3306/easy"; String user = "root"; String password = "root"; connection = null; try { Class.forName("com.mysql.jdbc.Driver"); System.out.println("Connecting to Database..."); connection = DriverManager.getConnection(databaseURL, user, password); if (connection != null) { System.out.println("Connected to the Database..."); } } catch (SQLException ex) { ex.printStackTrace(); } catch (ClassNotFoundException ex) { ex.printStackTrace(); } } @Test public void getEmployeesFromDataBase() { try { String query = "select * from employee"; statement = connection.createStatement(); rs = statement.executeQuery(query); while(rs.next()){ int EmpId= rs.getInt("EmpId"); String EmpName= rs.getString("EmpName"); String EmpAddress=rs.getString(3); String EmpDept=rs.getString("EmpDept"); Double EmpSal= rs.getDouble(5); System.out.println(EmpId+"\t"+EmpName+"\t"+EmpAddress+"\t"+EmpSal+"\t"+EmpDept); } } catch (SQLException ex) { ex.printStackTrace(); } } @AfterClass public void tearDown() { if (connection != null) { try { System.out.println("Closing Database Connection..."); connection.close(); } catch (SQLException ex) { ex.printStackTrace(); } } }}

i eksemplet ovenfor har vi setUp () vil opprette en databasetilkobling, og i @Testmetode vil vi utføre og iterere tabellen for å skrive ut alle verdiene i databasen. Og last tearDown () har nær forbindelse som vil lukke databaseforbindelsen hvis den åpnes.

Utdata av programmet ovenfor skal se ut nedenfor:

 databasetestresultat med selen

Til nå har vi sett eksempel på hvordan du får tilgang til database, la oss nå se hvordan vi faktisk utfører databasetesting ved Hjelp Av Selen.

det er hovedsakelig to ting som vi kanskje vil teste for å verifisere database Med Selen.

Først etter at vi har gjort noe i webapplikasjonen (Front-end), vil vi kanskje sjekke databasen hvis alle detaljene vi sendte inn, er lagret riktig. Nå for eksempel, når du oppretter en konto, vil vi legge inn noen data e-Id, brukernavn etc. For å sikre at en konto er opprettet, kan vi sjekke posten opprettet i databasen med alle detaljer brukeren gitt.

Andre tilfeller kan være som, etter å ha utført en handling, kan vi sjekke at dataene som vises i BRUKERGRENSESNITTET, er riktige ved å sammenligne Databasen.

Håper denne artikkelen hjelper deg. Gi oss beskjed hvis har kommet over noen problemer når du arbeider med ovennevnte program og tilbakemelding er også velkommen.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.