前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SeleniumWebDriver运行数据库测试?

SeleniumWebDriver运行数据库测试?

作者头像
用户7466307
发布2021-01-12 14:57:43
7410
发布2021-01-12 14:57:43
举报

在这里中,让我们看看如何使用Selenium WebDriver进行数据库测试。此外,Selenium WebDriver是使用户界面自动化的工具。我们只能使用Selenium WebDriver与浏览器进行交互。

有时,我们可能会遇到从数据库获取数据或修改(更新/删除)数据库中数据的情况。如果我们计划使浏览器附近的任何东西自动化,那么我们需要使用其他工具来完成我们的任务。为了实现数据库连接并进行工作,我们需要使用JDBC API驱动程序。

Java数据库连接(JDBC)API提供了来自Java编程语言的通用数据访问。使用JDBC API,您几乎可以访问任何数据源,从关系数据库到电子表格和平面文件。它使用户可以连接数据库并与之交互JDBC是一种SQL级API,允许我们执行SQL语句。它在Java编程语言和数据库之间创建连接。,并根据我们在自动化脚本中使用的查询来获取数据。

使用JDBC驱动程序,我们可以执行以下操作

  1. 建立数据库连接
  2. 将SQL查询发送到数据库
  3. 处理结果

加载所需的JDBC(Java数据库连接)驱动程序类:

代码语言:javascript
复制
Class.forName("com.mysql.jdbc.Driver");

注意:参数在MySQL,DB2等数据库之间有所不同,

建立与数据库(MS SQL Server)的连接:

代码语言:javascript
复制
Connection con = DriverManager.getConnection("DataBaseURL", "userName", "password");

连接URL语法(MS SQL Server):

代码语言:javascript
复制
jdbc:sqlserver://ipAddress:portNumber/dbName

执行SQL查询:

代码语言:javascript
复制
Statement sqlStatement = con.createStatement();
String sqlQuery = "SELECT * FROM table_name WHERE condition";
ResultSet resSet = sqlStatement.executeQuery(sqlQuery);

来自已执行查询的结果存储在ResultSet对象中。

从结果集中获取数据:

代码语言:javascript
复制
while (resSet.next()) {
    System.out.println(resSet.getString(required_column_name));
}

断开数据库连接:

代码语言:javascript
复制
con.close();

处理结果的方法列表:

注意:假设您已经安装了数据库。

遵循的步骤–使用Selenium WebDriver进行数据库测试:

  1. 下载jar文件。
  2. 将下载的jar文件添加到您的项目中

右键单击Java文件–单击构建路径–配置构建路径–选择库–单击添加外部JAR –选择MSSQL Server JDBC jar –单击“打开”以将其添加到项目中

3.复制以下提到的脚本并根据需要进行修改并执行

注意:您可以在下面的代码片段中找到该脚本的详细说明

从数据库获取数据的脚本–数据库测试:

代码语言:javascript
复制
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();
  }
}

用于更新数据库中数据的脚本–数据库测试:

代码语言:javascript
复制
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();
     }
}

删除数据库中数据的脚本–数据库测试:

代码语言:javascript
复制
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();
     }
}

如果发现任何困难,请在下面评论。另外,我亲自挑选了几篇文章,可以帮助您了解更多与面试有关的内容

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件测试test 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 遵循的步骤–使用Selenium WebDriver进行数据库测试:
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档