zoukankan      html  css  js  c++  java
  • soapui + groovy 接口自动化测试 第六章

    对线期--补刀稳健,才能无往不利!

    Soapui创建项目,在TestStep右键--Insert Step中有一个功能列表,这个列表中加Request/Properties/Groovy Script/SOAP Mock Response等;

    但是!这些我并不介绍如何使用,常用的仅仅Groovy Script!因为这些功能脚本都能调用,且绝大部分我们用不到的。这些功能如何使用请自觉查阅帮助文档;

    点开一个Requset,点击左上角的绿色按钮,我们可以看到这个请求发过去了并接收到了服务器的返回;但是这是死的,我们需要把部分参数参数化才能让脚本活起来,下面我们来介绍各种参数;

    1.system property 系统级别

    设置参数

    在testrunner.bat中使用-D参数进行设置,D : Sets system property with name=value

    读取参数

    这个参数我只在testrunner.bat上看到过如何设置,没测试如何读取;估计使用${#System#name}可以读取


    2.global property 全局变量

    设置参数

    File--Preferences--Global Properties 在此设置全局变量

    在testrunner.bat中使用-G参数进行设置,G : Sets global property with name=value

    读取参数

    context.expand($(#Global#name))

    3.project property 项目变量

    设置参数

    双击项目名,点击右下角的Properties 在此设置项目变量

    在testrunner.bat中使用-P参数进行设置,P : Sets project property with name=value, e.g. -Pendpoint=Value1 -PsomeOtherProperty=value2

    testRunner.testCase.testSuite.testProject.setPropertyValue('name','test')

    读取参数

    context.expand($(#Project#name))

    testRunner.testCase.testSuite.testProject.getPropertyValue('name')

    3.Test Suite 测试结果集变量

    设置参数

    双击Test Suite,点击右下角Properties 在此设置测试结果集变量

    testRunner.testCase.testSuite.setPropertyValue('name','test')

    读取参数

    context.expand($(#testSuite#name))

    testRunner.testCase.testSuite.getPropertyValue('name')

    4.Test Case 测试用例变量

    设置参数

    双击Test Case,点击右下角Properties 在此设置测试用例变量

    testRunner.testCase.setPropertyValue('name','test')

    读取参数

    context.expand($(#testCase#name))

    testRunner.testCase.getPropertyValue('name')

    5.Test Steps 测试步骤变量

    设置参数

    双击Test Steps中的Request请求,设置参数列表中的值,这就是设置参数了;

    在Test Steps中右键-Insert Step-Properties设置参数,它的读取方法也有多种,基本的就用testRunner读取,其他的就不介绍了;

    在Groovy Script中使用context.setProperty('name','test') /context.[name] = [value] 自定义变量

    testRunner.testCase.testSteps['测试步骤名字'].setPropertyValue('参数的名字','test');此方法用于直接设置Request请求中参数的值

    读取参数

    testRunner.testCase.testSteps['测试步骤名字'].getPropertyValue('参数的名字')

    在整个TestCase里的所有TestStep引用context自定义变量,均可用${[property]}, e.g ¥{name}/context.[name]

    备注:还有很多其他的参数设置方法,我用到的就上边这些,已经满足一般的脚本开发;

    参数设置的原则:

    同一级别公用的参数,设置在最近上一级别中;举个栗子,多个Test Steps公用的参数设置在Test Case;多个TestCase公用的参数设置在TestSuite;

    这样设置参数比较清晰,便于数据在多个Test Steps/Test Case之间传递。

  • 相关阅读:
    2019.9.6文艺理论笔记
    2019.9.5作业整理
    2019下高级英语笔记
    2019下实用口才课笔记
    【学英语~磨耳朵】2013年以来看过的所有美剧&电影&纪录片等等
    python温度转换代码
    python蟒蛇绘制的代码以及目前还不知道怎么用的RGB颜色对照表
    看TED演讲——Why you will fail to have a great career
    结构与算法(5)-----队列
    结构与算法(4)-----栈
  • 原文地址:https://www.cnblogs.com/mayibanjiah/p/4549865.html
Copyright © 2011-2022 走看看