SoapUI性能测试

  之前没发现SoapUI可以做性能测试,自己写了两个简单的例子,体验一下它的测试功能。

一、使用控件顺序执行

 

  测试的框架如上图所示,一个TestCase包含Test Steps(具体的测试步骤),Load Tests(设置测试线程的属性)以及安全测试,本文主要对前两个阶段进行详细说明。

1. JDBCRequest

  从数据库获取数据,配置信息如图:

     

2. Property Transfer

  将JDBCRequest查询结果映射到WebService Request中,添加三个属性对应关系

     

3. SOAPRequest

  在实际运行中,Property Transfer会将第一步的数据填充到对应的WebService请求参数中

      

4. LoadTest

  可以设置执行测试步骤的线程数量,模拟系统并发情景,并统计每个步骤运行时间。

      

 

二、使用Croovy脚本

    

1. 设置Properties

  添加三个属性,用于Groovy脚本和AlternateRequest之间的参数传递

       

2. SOAPRequest

       

3. 使用Groovy脚本进行自动化测试

import groovy.sql.Sql
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context);
def con = Sql.newInstance("jdbc:sqlserver://host:1433;databaseName=?",
    "user", "password", "com.microsoft.sqlserver.jdbc.SQLServerDriver")
def results = con.rows("select statementId, revisionDt, revisionTypeId from dbo.statement_revision where statementId=1")
for(result in results){
    log.info result
    def MyProp = testRunner.testCase.getTestStepByName("MyProperties")
    MyProp.setPropertyValue("statementId", result.statementId.toString())
    MyProp.setPropertyValue("revisionDt",  result.revisionDt.toString())
    MyProp.setPropertyValue("revisionType",result.revisionTypeId.toString())
    
    def response = testRunner.runTestStepByName("AlternateRequest")
}
con.close()
原文地址:https://www.cnblogs.com/anxiao/p/6773949.html