katalon数据库处理

在日常的测试工作中需要经常用到:数据库的处理,执行SQL语句。 Katalon Studio可以通过定制关键字的方式连接到数据库,并执行SQL语句。 基本实现思路如下所示:

  • 建立数据库连接
  • 执行数据查询
  • 关闭连接

官方提供的方法:

private static Connection connection = null;

	/**
	 * Open and return a connection to database
	 * @param dataFile absolute file path  
	 * @return an instance of java.sql.Connection
	 */
	@Keyword
	def connectDB(String dataFile){
		//Load driver class for your specific database type
		Class.forName("org.sqlite.JDBC")
		String connectionString = "jdbc:sqlite:" + dataFile
		if(connection != null && !connection.isClosed()){
			connection.close()
		}
		connection = DriverManager.getConnection(connectionString)
		return connection
	}
	
	/**
	 * execute a SQL query on database
	 * @param queryString SQL query string
	 * @return a reference to returned data collection, an instance of java.sql.ResultSet
	 */
	@Keyword
	def executeQuery(String queryString) {
		Statement stm = connection.createStatement()
		ResultSet rs = stm.executeQuery(queryString)				
        return rs
	}

	@Keyword
	def closeDatabaseConnection() {
		if(connection != null && !connection.isClosed()){
			connection.close()
		}
		connection = null
	}

	/**
	 * Execute non-query (usually INSERT/UPDATE/DELETE/COUNT/SUM...) on database	
	 * @param queryString a SQL statement
	 * @return single value result of SQL statement
	 */
	@Keyword
	def execute(String queryString) {
		Statement stm = connection.createStatement()
		boolean result = stm.execute(queryString)
		return result
	}

修改后实现的方法:

public class ValueUtil {
/** * 数据库连接 * @param url 连接地址--含数据库名 * @return value Value of variable */ @Keyword def DBconnect(url,userName,password){ return Sql.newInstance(url,userName,password,"com.mysql.jdbc.Driver") } /** * 执行sql * @param 操作数据库对象 * @param sql语句 * @return value Value of variable */ @Keyword def executeSql_Core(sql){ def db_url=GlobalVariable.G_db_url def userName=GlobalVariable.G_dbUser def password=GlobalVariable.G_dbPassword Sql con=new ValueUtil().DBconnect(db_url,userName,password) con.execute(sql) con.close() con=null } /*** 关闭数据库 */ @Keyword def DBclose(Sql db){ db.close() db=null }

}

说明:

ValueUtil为关键字

关键字模式显示效果:

通过以下路径File > New > Keyword新建关键字。
如果不知道怎么新建关键字,详见笔者上一篇文章:Katalon Studio如何定义关键字
database

Script模式调用方式:

按照以上方式封装好关键字以后,在编辑脚本的时候就可以愉快的调用以上方法实现连接数据库执行SQL语句了。调取方式如下所示:
database_read
原文地址:https://www.cnblogs.com/toney-66/p/10308424.html