您的位置:软件测试 > 开源软件测试 > 开源功能测试工具 >
用SoapUI进行Webservice的性能压力测试
作者:网络转载 发布时间:[ 2013/4/16 15:36:27 ] 推荐标签:

  1. 新建测试工程

  选择在一个测试用例中测试多个方法,并为测试生成压力测试:

  2. 为测试 Step 添加变量:

  右键选中 Test Step ,添加一个 Grooy Script Step ;添加一个变量 count 并设置初始值为 0

  3. 添加一个随机变量:

  右键选中 Test Step ,添加一个 Grooy Script Step ;名称为 rand ,用下面的代码产生一个随机值

  view plaincopy to clipboardprint?

  01.Random rand = new Random()

  02.result = "test_" + rand.nextInt(100)

  Random rand = new Random()

  result = "test_" + rand.nextInt(100)

  4. 使用动态参数:

  打开 init 操作的 SOAP 请求,将输入参数用上面步骤产生的随机替换

  view plaincopy to clipboardprint?

  http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice.test.jastar.com.cn">

  ${rand#result}

  http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice.test.jastar.com.cn">

  ${rand#result}

  5. 按条件选择执行操作:

  同样的再添加一个 Grooy Script Step ;名称叫 ExecHandler ,用来条件控制用例的执行

  view plaincopy to clipboardprint?

  01.def countProps = testRunner.testCase.getTestStepByName("count")

  02.def index = countProps.getPropertyValue("count")

  03.if (index == "0") {

  04. testRunner.runTestStepByName("init")

  05.} else {

  06. testRunner.runTestStepByName("run")

  07.}

  08.countProps.setPropertyValue("count", "1")

  def countProps = testRunner.testCase.getTestStepByName("count")

  def index = countProps.getPropertyValue("count")

  if (index == "0") {

  testRunner.runTestStepByName("init")

  } else {

  testRunner.runTestStepByName("run")

  }

  countProps.setPropertyValue("count", "1")

  6. 执行测试:

  打开 LoadTest , disable 掉 init 和 run(ExecHandler 控制 init 和 run 的执行 ) ,设置好参数, OK 可以开始跑了。正如你所预期的 init 方法只执行一次,而 run 将会按照你所设置的方式来执行。

软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd