在这里中,让我们看看如何使用Selenium WebDriver进行数据库测试。此外,Selenium WebDriver是使用户界面自动化的工具。我们只能使用Selenium WebDriver与浏览器进行交互。 有时,我们可能会遇到从数据库获取数据或修改(更新/删除)数据库中数据的情况。如果我们计划使浏览器附近的任何东西自动化,那么我们需要使用其他工具来完成我们的任务。为了实现数据库连接并进行工作,我们需要使用JDBC API驱动程序。 Java数据库连接(JDBC)API提供了来自Java编程语言的通用数据访问。使用JDBC API,您几乎可以访问任何数据源,从关系数据库到电子表格和平面文件。它使用户可以连接数据库并与之交互JDBC是一种SQL级API,允许我们执行SQL语句。它在Java编程语言和数据库之间创建连接。,并根据我们在自动化脚本中使用的查询来获取数据。 使用JDBC驱动程序,我们可以执行以下操作
加载所需的JDBC(Java数据库连接)驱动程序类: Class.forName("com.mysql.jdbc.Driver"); 注意:参数在MySQL,DB2等数据库之间有所不同, 建立与数据库(MS SQL Server)的连接: Connection con = DriverManager.getConnection("DataBaseURL", "userName", "password"); 连接URL语法(MS SQL Server): jdbc:sqlserver://ipAddress:portNumber/dbName 执行SQL查询: Statement sqlStatement = con.createStatement(); String sqlQuery = "SELECT * FROM table_name WHERE condition"; ResultSet resSet = sqlStatement.executeQuery(sqlQuery); 来自已执行查询的结果存储在ResultSet对象中。 从结果集中获取数据: while (resSet.next()) { System.out.println(resSet.getString(required_column_name)); } 断开数据库连接: con.close(); 处理结果的方法列表: 注意:假设您已经安装了数据库。 遵循的步骤–使用Selenium WebDriver进行数据库测试:
右键单击Java文件–单击构建路径–配置构建路径–选择库–单击添加外部JAR –选择MSSQL Server JDBC jar –单击“打开”以将其添加到项目中 3.复制以下提到的脚本并根据需要进行修改并执行 注意:您可以在下面的代码片段中找到该脚本的详细说明 从数据库获取数据的脚本–数据库测试: package softwareTestingMaterial; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
public class DBTesting { public static void selectQuery() throws SQLException, ClassNotFoundException { String dbURL = "jdbc:sqlserver://ipAddress:portNumber/dbName"; String username = myUserName; String password = myPassword; //加载MS SQL JDBC驱动程序 Class.forName("net.sourceforge.jtds.jdbc.Driver"); //创建与数据库的连接 Connection con = DriverManager.getConnection(dbURL,username,password); //创建语句对象 Statement st = con.createStatement(); String selectquery = "SELECT * FROM <tablename> WHERE <condition>"; //执行SQL查询并将结果存储在ResultSet中 ResultSet rs = st.executeQuery(selectquery); //While循环遍历所有数据并打印结果 while (rs.next()) { System.out.println(rs.getString("transaction_datetime")); } //关闭数据库连接 con.close(); } } 用于更新数据库中数据的脚本–数据库测试: package softwareTestingMaterial; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
public class DBTesting { public static void updateQuery() throws ClassNotFoundException, SQLException{ String dbURL = "jdbc:sqlserver://ipAddress:portNumber/dbName"; String username = myUserName; String password = myPassword; String updatequery = "UPDATE <table_name> SET <column_name> = <some_value>"; Class.forName("net.sourceforge.jtds.jdbc.Driver"); Connection con = DriverManager.getConnection(dbURL,username,password); Statement stmt = con.createStatement(); stmt.executeUpdate(updatequery); con.close(); } }
删除数据库中数据的脚本–数据库测试: package softwareTestingMaterial; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
public class DBTesting { public static void deleteQuery() throws SQLException, ClassNotFoundException { String dbURL = "jdbc:sqlserver://ipAddress:portNumber/dbName"; String username = myUserName; String password = myPassword; String query = "DELETE FROM <table_name>"; Class.forName("net.sourceforge.jtds.jdbc.Driver"); Connection con = DriverManager.getConnection(dbURL,username,password); Statement stmt = con.createStatement(); stmt.executeUpdate(query); //关闭数据库连接 con.close(); } } 如果发现任何困难,请在下面评论。另外,我亲自挑选了几篇文章,可以帮助您了解更多与面试有关的内容: |
|