soapUI+groovy 接口测试之部分groovy使用记录
admin
2023-06-09 20:23:44
0

1, 写入值(30,31),更新到数据表的多条记录。


sqlStr ="select column_id from 1dcq_shop_column2  where shop_id = '"+ db_Shop_id + "'"

def dbSettings=[]

def db_sub_column_id =""

sqlResult = sql.eachRow(sqlStr)

{

dbSettings << it.toRowResult() 

}

 

for (i=0;i< dbSettings.size;i++)

{

db_sub_column_id = db_sub_column_id.toString() + dbSettings[i].column_id.toString()

if (i < dbSettings.size-1)

{

db_sub_column_id=db_sub_column_id+","

}

}

assert subColumnId == db_sub_column_id


2,初始化数据

import groovy.sql.Sql

//import groovyx.net.http.ContentType

log.info("-------------------------------------------------The Test Step start ---------------------------------------------")

/*            

*             1,获取数据库连接参数,连接数据库

*/

def tpProperties = testRunner.testCase.getProject()

def tsProperties = testRunner.testCase.getTestSuite()

def tcProperties = testRunner.getTestCase()


def service_ip= tpProperties.getPropertyValue( "YDGJ_IP" )

def refreshPath = tpProperties.getPropertyValue( "refreshPath" )

def db_url = tpProperties.getPropertyValue( "DB_Connection_URL" )

def db_user = tpProperties.getPropertyValue( "DB_loginname" )

def db_pwd = tpProperties.getPropertyValue( "DB_Password" )

def db_driver = tpProperties.getPropertyValue( "DB_Driver_Class" )


def sql = Sql.newInstance(db_url,db_user,db_pwd,db_driver)

     log.info("------ 1,获取数据库连接参数,连接数据库 finished")



     

/*            

*             2,初始化数据库表

*/

// begin 初始化数据

def sqlStr = "call sp_easydata_genAll()"

log.info("自动生成业务数据 : " +  sqlStr)

sql.execute(sqlStr)


log.info("------ 2,初始化表基础数据 finished")


/*            

*             3,设置补充用例所需表数据

*/

 

/*

def sqlStr = "select first 1 from "

log.info(sqlStr)

sql.execute(sqlStr);

*/

log.info("------ 3,设置补充用例所需表数据 finished, (请根据业务设置!)")


/*            

*             4,设置 或 从数据表获取 用例参数值

*/

//设置数据-必填

def curTime = System.currentTimeMillis()

//log.info("curTime:" + curTime)

def shopName= "shopName"+curTime

log.info(shopName)

tcProperties.setPropertyValue( "shopName", shopName) 

tcProperties.setPropertyValue( "userId", "2916011") 

tcProperties.setPropertyValue( "shopkeeper","店主姓名呀") 

tcProperties.setPropertyValue( "provinceId","360000") 

3, 通过设置变量,获取变量完成值传递


def tpProperties = testRunner.testCase.getProject()

def tsProperties = testRunner.testCase.getTestSuite()

def tcProperties = testRunner.getTestCase()


def shopName = tcProperties.getPropertyValue("shopName" )

def userId = tcProperties.getPropertyValue("userId" )

def shopkeeper = tcProperties.getPropertyValue("shopkeeper" )

def provinceId = tcProperties.getPropertyValue("provinceId" )




三,string 用split 处理成数组

log.info("skillsCertificateNos: " + skillsCertificateNos)

String[] strAry = skillsCertificateNos.split(",");

log.info ("strAry.size():" + strAry.size())

for (i=0;i

{

sqlStr = "select count(*) as cnt from 1dcq_p_w_upload  where file_no = '"+ strAry[i] + "'"

log.info(sqlStr)

sqlResult = sql.firstRow(sqlStr)

log.info ("skillsCertificateNos,,,,,,,,sqlResult.cnt : " + sqlResult.cnt)

assert sqlResult.cnt == 1

}



相关内容

热门资讯

吉田茂的这句告诫,值得日本政府... 高市早苗出任首相后,日本修宪动向再度成为舆论焦点。自民党一方面以“安全保障形势发生剧变”为借口,谋求...
人形机器人,要有身份证了! ◎ 科技日报记者 华凌 22日, 全国首个人形机器人全生命周期管理服务平台在北京发布,《人形机器人全...
伊朗现在哭笑不得 感觉伊朗现在正哭笑不得。与美国的谈判在进行中,特朗普也在不断发帖“指导”中,但按照伊朗的说法,美国官...
最新研究:银河系多数岩质行星构... IT之家 5 月 24 日消息,我们对太阳系内的行星已有诸多认知,长期以来,我们都认为银河系其他区域...
灵动岛缩减35% 史上颜值巅峰... PChome 5月23日消息,随着iPhone 18 Pro和iPhone 18 Pro Max的贴...
双方互攻伤亡大,学校被袭引关切... 【环球时报驻俄罗斯特派记者 隋鑫 郑真】俄罗斯国防部24日表示,为回应乌克兰对俄方民用基础设施的恐怖...
神舟二十三号飞船有多项创新 我国2026年度载人发射任务首战告捷——神舟二十三号飞船有多项创新本报记者 刘诗瑶 李君强《人民日报...
人民日报刊文:警惕日本军国主义... 警惕日本军国主义卷土重来(国际论坛)斯特凡·卢比奇《人民日报》(2026年05月25日 第 03 版...
一线调研|从太空到3000米深... 来源:券商中国 当一颗卫星以每秒7公里的速度驶入太空,或者一台机器人潜入3000米深的海底,它们在传...
第8次会师!神舟二十三号航天员... 新华社酒泉5月25日电(记者李国利、高蕊)神舟二十三号航天员乘组25日顺利进驻“天宫”,中国航天员完...