soapUI+groovy 接口测试之部分groovy使用记录

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<strAry.size();i++)

{

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

log.info(sqlStr)

sqlResult = sql.firstRow(sqlStr)

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

assert sqlResult.cnt == 1

}



本课程是接口测试的基础+进阶+高阶的实战精品课程。 老师从多角度、多方位基于Demo进行讲解,力求做到认真细致讲好课程的每一要点。 全方位助力学员掌握接口测试的技术要领,快速跃升为接口测试方面的高手。 Demo具备很好的通用性及移植性,可以快速运用于实际接口测试中。 主讲老师为资深高级技术专家。毕业于电子科技大学。先后工作于多家知名外企,知名通信民企,知名IT公司。◇ 具备区块链领域高级测试解决方案设计、专家级测试开发、团队管理培训经验。◇ 具备专家级自动化测试解决方案、自动化测试平台框架设计开发、自动化测试团队管理培训经验。◇ 具备专家级的功能专项测试、性能专项测试经验及丰富的渗透测试经验。◇ 具备丰富的持续集成/持续交付(CI/CD)开发、实施及运维经验。◇ 具备丰富的C#/Java/Delphi/VB/C++/Python/Tcl/Groovy/Shell等开发及脚本开发经验◇ 具备20年的IT互联网工作经验。先后担任过项目经理,测试技术经理,测试总监以及专家级技术顾问等职务。独立开发完成有如下自动化测试框架及平台◇ GUI自动化测试框架(TSL)◇ ATF自动化测试框架(Tcl/Tk)◇ ATP自动化测试平台(C#/Java)◇ SoapUI接口自动化测试框架(Groovy/华为)◇ 持续集成自动化打包框架(Java/华为)◇ 区块链性能测试框架(Python)等。擅长框架/平台设计开发、团队管理、团队技能提升培训,技术瓶颈突破等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值