1. 程式人生 > >SoapUI中使用Groovy指令碼操作資料庫

SoapUI中使用Groovy指令碼操作資料庫

SoapUI中支援使用Groovy指令碼,通過Groovy指令碼可以操作資料庫,並可以對資料庫結果進行校驗,從而完成用例的檢查。

1:在SoapUI中放置第三方Jar包

連線的資料庫的jar包需要放置於bin/ext目錄下

原文如下:

If you need to add external libraries to the soapUI classpath for your Groovy scripts (for example jdbc drivers), put these in the bin/ext folder under the soapUI installation, these will be read upon started and added to the soapUI classloader.

2: 在SoapUI的Test Case中新增資料庫連線的配置,此配置的Properties檔案可以直接從本地檔案中匯入

3:在SoapUI的Test Case中新建Groovy Script連線資料庫

介面如下

def sql = Sql.newInstance(   

          地址,   

          使用者名稱,   

          密碼,   

          驅動 )

實現樣例如下:

import groovy.sql.Sql
//通過讀取配置檔案連線資料庫
 def DBProperties = testRunner.testCase.getTestStepByName( "DBProperties" );
def sql = Sql.newInstance(DBProperties.getPropertyValue( "connection-url" ),DBProperties.getPropertyValue( "sysdb-user-name" ),
           DBProperties.getPropertyValue( "sysdb-password" ),DBProperties.getPropertyValue( "driver-class" ))

4:在SoapUI中通過Groovy指令碼操作資料庫

1)刪除和新建表

//刪除表
try {
   sql.execute("drop table PERSON")
} catch(Exception e){}

//新建表
sql.execute('''create table PERSON (
    id integer not null primary key,
    firstname varchar(20),
    lastname varchar(20),
    location_id integer,
    location_name varchar(30)
)''')

2)插入記錄

插入記錄有兩種方式

//向表中插入記錄

sql.execute("insert into PERSON (id,firstname,lastname,location_id,location_name) values (1,'gao','shuaihong',1,'hshen') ")

//插入記錄另外一種方式
def people = sql.dataSet("PERSON")
people.add( firstname:"James", lastname:"Strachan", id:4, location_id:10, location_name:'London' )

3)查詢記錄

//選擇一行記錄
def gaoshuaihong = sql.firstRow("select * from PERSON where id = 1") 
log.info(gaoshuaihong.firstname)

//選擇多條記錄
def allPerson  = sql.rows(" select * from  PERSON")
log.info(allPerson)
log.info(allPerson[0])
sql.eachRow("select * from PERSON"){ row ->  
    log.info(row.lastname)
 }

4)校驗結果
 assert allPerson[0].lastname== "shuaihong"

轉載,做個備忘


相關推薦

SoapUI使用Groovy指令碼操作資料庫

SoapUI中支援使用Groovy指令碼,通過Groovy指令碼可以操作資料庫,並可以對資料庫結果進行校驗,從而完成用例的檢查。 1:在SoapUI中放置第三方Jar包 連線的資料庫的jar包需要放置於bin/ext目錄下 原文如下: If you need to add

SoapUI自動化--Groovy指令碼常用操作

soapUI-Groovy指令碼常見操作:(嘔心一個星期整理和test,經確認完全可以使用) 1.連線資料庫 //SQLServer def sql=Sql.newInstance(url:"jdbc:sqlserver://192.168.1.2:1433;databas

在spring使用SqlMapClientTemplate操作資料庫

SqlMapClientTemplate是SqlMapClient的封裝類。 SqlMapClient是ibatis的。但SpringFramework,也很好的將其進行了整合,我們要做的就是繼承SpringFramework中提供的SqlMapClientDaoSup

工作的hibernate(操作資料庫)

關於工作的hibernate的hql語句: 可以使用 StringBuffer hql = new StringBuffer(); hql.append() baseDAO.find(hql); 2.可以使用String sql = “from

SoapUI自動化--Groovy指令碼實現隨機抽取DataSource(Excel)

def subRow=6 def startColumn='A' def startRow=2 //以上3個數據,由使用者填寫,後期實現在testSuite或者testCase的Property中實現取值 //subRow 總共有多少行資料(不包含表頭) //startCo

JVMGroovy指令碼並行執行效能優化

       當JVM中執行的Groovy指令碼存在大量併發時,如果按照預設的策略,每次執行都會重新編譯指令碼,呼叫類載入器進行類載入。不斷重新編譯指令碼會增加JVM記憶體中的CodeCache和Pe

VC++通過ADO的_RecordsetPtr操作資料庫:增刪改查

_RecordsetPtr智慧指標,它是專門為通過記錄集操作資料庫而設立的指標,通過該介面可以對資料庫的表內的記錄、欄位等進行各種操作。 要搞清楚:資料庫和ADO的記錄集是兩個不同的概念,是存在於不同物理位置的兩個儲存空間。記錄集相當於是實際資料的一份拷貝。正因為記錄集是相對脫離資料庫而存在的,所以才存在後

mysql使用MySqlParameter操作資料庫

在.net中操作資料庫的時候。 大家都喜歡用sqlparameter。 parameter是預編譯的,可以加快速度,也可以防注入。 在使用mssql的時候用sqlparameter。 在使用MySQL的時候使用mysqlparameters。 第一次使用mysq

Android Studio通過SQLiteOpenHelper操作資料庫

在《Android Studio中通過SQLiteDatabase操作資料庫》一文中提到了使用SQLiteDatabase類操作資料庫的方法。使用該類操作資料庫,在建立資料庫和更新資料庫時,需要考慮到多種情況,例如需要考慮當前資料庫是否存在,當前資料庫是否已經開啟,當前資料庫

使用spring boot的JPA操作資料庫

前言 Spring boot中的JPA 使用的同學都會感覺到他的強大,簡直就是神器一般,通俗的說,根本不需要你寫sql,這就幫你節省了很多時間,那麼下面我們來一起來體驗下這款神器吧。 一、在pom中新增依賴 <dependency> <

SoapUI】在soapui使用Groovy指令碼常用方法

1. setPropertyValue       a. 設定 project level property         //set to project level property         testRunner.testCase.testSuite.project.setPropertyVal

soapui使用Groovy指令碼常用方法

1. setPropertyValue      a. 設定 project level property        //set to project level property        testRunner.testCase.testSuite.project.setPropertyValue(

JDBC上關於資料庫多表操作一對多關係和多對多關係的實現方法--轉

  原文地址---- https://www.cnblogs.com/pangguoming/p/7028322.html 黑馬程式設計師 我們知道,在設計一個Java bean的時候,要把這些BEAN 的資料存放在資料庫中的表結構,然而這些資料庫中的表直接又有些特殊

Navicat操作資料庫時一直顯示載入

用Navicat for mysql操作mysql資料庫,其中一個表怎麼也打不開,一直載入,還不能關閉。從網上搜索原因,主要是以下幾個原因:原因一:表死鎖,會出現這樣的情況,鎖不釋放,無論多久都讀取不了資料,一直載入中!原因二:表裡面的資料量太大造成的。 原因三:網路慢,卡,資料不能傳輸。經過分析,98%是原

Java儲存資料庫時間戳和php操作資料庫時間戳的關係

一直困擾我的問題,終於得到了解決!原先以為是自己系統問題(其實也可以確定自己的系統是64位),於是利用一下程式碼測試自己的系統是不是有問題,得到的結果是沒問題的,但是就是無正確結果輸出。於是解決問題途徑是在strtotime()函式和date(format,time())函式之間徘徊。

Django通過指令碼的方式將json資料寫入資料庫

      這裡記錄一下django中通過指令碼的方式寫入json資料的一些技巧。       通過指令碼不僅可以將已有的json資料寫入資料庫,而且可以批量地模擬一些後臺資料,方便進行頁面的展示。    

Hive建立,操作,刪除資料庫

目錄 資料庫的建立: 資料庫的查詢,切換,修改:  資料庫的刪除: 資料庫的建立: 操作如下: 0: jdbc:hive2://hadoop108:10000> show databases; OK +----------------+--+ | da

shell指令碼的那點小事兒--shell指令碼資料庫操作(六)

內容一:shell指令碼的SQL語句 1.安裝SQL 視覺化安裝,直接下載安裝了 下載完成後: 2.開啟資料庫 開啟之後 不用的時候,記得關閉資料庫 連線資料庫 終端輸入:mysql -u root -p 3.退出資料庫 登入資料庫後,檔案目錄

es 基於groovy指令碼進行操作document

es,其實是有個內建的指令碼支援的,可以基於groovy指令碼實現各種各樣的複雜的操作 基於groovy指令碼,如何執行partial update PUT /index/type/id {     

Java如何傳一個數組作為篩選條件操作資料庫(sqlforeach的使用)。

實現步驟(以多個id作為入參為例): 1.在前端先傳一個str,以逗號作為分隔符,將該str傳遞給後端介面; 2.在後端pojo裡面先定義一個list作為存放變數相關po定義如下: private Li