根据要存储的数据,新建数据库表
如:
在数据库test下新建log表:
package utils
import java.sql.Connection
import java.sql.DriverManager
import java.sql.ResultSet
import java.sql.Statement
import java.text.SimpleDateFormat
import com.kms.katalon.core.annotation.Keyword
public class DemoMySql {
private static Connection connection = null;
//Establishing a connection to the DataBase
@Keyword
def connectDB(String url, String dbname, String port, String username, String password){
//Load driver class for your specific database type
String conn = "jdbc:mysql://" + url + ":" + port + "/" + dbname
//Class.forName("org.sqlite.JDBC")
//String connectionString = "jdbc:sqlite:" + dataFile
if(connection != null && !connection.isClosed()){
connection.close()
}
connection = DriverManager.getConnection(conn, username, password)
return connection
}
@Keyword
def executeQuery(String queryString) {
Statement stm = connection.createStatement()
ResultSet rs = stm.executeQuery(queryString)
return rs
}
//Closing the connection
@Keyword
def closeDatabaseConnection() {
if(connection != null && !connection.isClosed()){
connection.close()
}
connection = null
}
@Keyword
def execute(String queryString) {
Statement stm = connection.createStatement()
boolean result = stm.execute(queryString)
return result
}
@Keyword
def saveVerifyResultForDatabase(verify_the_content,desired_value,actual_value,isequals){
def date = new Date()
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
connectDB("127.0.0.1","test","3306","root","root")
execute("INSERT INTO `test`.`log` ( `name`, `expected`, `actual`, `result`, `create_time`) VALUES ('"+verify_the_content+"', '"+desired_value+"', '"+actual_value+"', '"+isequals+"','"+sdf.format(date)+"');")
closeDatabaseConnection()
}
}
存储数据使用 saveVerifyResultForDatabase,其中链接数据库connectDB的配置根据实际配置进行修改。
三、调用关键字在填写测试用例时,调用关键字,保存验证结果:
CustomKeywords.'utils.DemoMySql.saveVerifyResultForDatabase'("检查个人登录端证件类型", desired_value, getcardtype,s1)



