katalon數據庫處理

在平常的測試工做中須要常常用到:數據庫的處理,執行SQL語句。 Katalon Studio能夠經過定製關鍵字的方式鏈接到數據庫,並執行SQL語句。 基本實現思路以下所示:html

  • 創建數據庫鏈接
  • 執行數據查詢
  • 關閉鏈接

官方提供的方法:

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 }

}java

說明:mysql

ValueUtil爲關鍵字

關鍵字模式顯示效果:

經過如下路徑File > New > Keyword新建關鍵字。
若是不知道怎麼新建關鍵字,詳見筆者上一篇文章: Katalon Studio如何定義關鍵字
database

Script模式調用方式:

按照以上方式封裝好關鍵字之後,在編輯腳本的時候就能夠愉快的調用以上方法實現鏈接數據庫執行SQL語句了。調取方式以下所示:
database_read
相關文章
相關標籤/搜索