2012-07-12 48 views
2

我的功能是測試何時發送移動運營商,它應該返回與該運營商相關的充值值列表。如何提取DB值並將其與肥皂響應進行比較

  1. 我可以能夠檢索使用JDBC請求
  2. 我得到與充值值列表成功響應的DB值。

這裏我想測試一下,響應實際上只包含來自數據庫的值。如何測試這個?有什麼想法..請讓我知道。

感謝 錢德拉

回答

4

您可以使用Groovy腳本:

import com.eviware.soapui.support.GroovyUtils 
import groovy.sql.Sql 

//those are feched from testsuite properties 
def dbUrl=context.expand('${#TestSuite#Url}') 
def dbUser=context.expand('${#TestSuite#User}') 
def dbPass=context.expand('${#TestSuite#Pass}') 
def dbDriver=context.expand('${#TestSuite#Driver}') 

def db = Sql.newInstance(dbUrl, dbUser, dbPass, dbDriver) 

def dbValues = db.rows("SELECT A, B, C from TABLE ") 
//is only one row? 
assert dbValues.size == 1 

def valueA = dbValues[0].A 

//more asserts 
+0

好!它對我來說工作得很好。 :) – ChanGan 2012-07-13 09:24:02

0

您可以創建一個JDBC步驟,然後點擊從它的頂部添加屬性(+)。 然後在「名稱」列下輸入任意名稱,然後單擊值字段並使用獲取數據右鍵單擊選項從響應中檢索數據。

現在通過給出配置詳細信息和驅動程序,連接字符串的詳細信息和密碼連接到數據庫。 然後寫數據庫查詢,如下圖所示SQL查詢部分:

Select * From DBName 
where DB Columnname =:Name given in the property added above 

對於前:

Select * From Test_DB 
where sequenceid =:Sequence_Response 
相關問題