This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
dongxiaoyan-tsg-autotest/02-Keyword/tsg_common/Case.robot

86 lines
4.2 KiB
Plaintext
Raw Normal View History

*** Settings ***
Library json
Resource ../../03-Variable/BifangApiVariable.txt
Resource ../../02-Keyword/tsg_adc/SystemCommand.robot
Resource ../../02-Keyword/tsg_bfapi/PolicyObject.robot
Resource ../../02-Keyword/tsg_bfapi/LogVariable.robot
Resource ../../02-Keyword/tsg_bfapi/LogSchema.robot
Resource ../../02-Keyword/tsg_adc/PolicyVertify.robot
*** Test Cases ***
case01
# 创建对象-IP
# addItemList全参数为方便说明将参数值拆分为几部分其实际值为单条无空格/回车字符串,每部分内代表的各参数不可跳跃。)
# [addrType]|[protocol]|[direction]|[isSession]# 第一部分(可省略)
# [clientIpFormat]|[clientIp1]|[clientIp2]|[clientPort1/clientPort2]& 第二部分(不可省略)
# [serverIpFormat]|[serverIp1]|[serverIp2]|[serverPort1/serverPort2]| 第三部分(可省略)
# [isInitialize]|[itemName]|[itemDesc], 第四部分(可省略)
# ...
${objectDict} Create Dictionary
... objectType=ip
... isValid=${1}
... addItemList=range|192.168.40.51|192.168.40.120|80/88
${rescode} ${objectId} AddObject2 ${1} ${objectDict}
# 创建对象-http_signature
# addItemList全参数参数不可跳跃[keywordArray]|[district]为必填,其它可省略)
# [keywordArray]|[district]|[isHexbin]|[isInitialize]|[itemName]|[itemDesc],...
${objectDict} Create Dictionary
... objectType=http_signature
... isValid=${1}
... addItemList=abcd|Cookie
${rescode} ${objectId} AddObject2 ${1} ${objectDict}
# 创建对象-url/fqdn/keywords/subscriberid/fqdn_category/account
# addItemList全参数参数不可跳跃[keywordArray]为必填,其它可省略)
# [keywordArray]|[isHexbin]|[isInitialize]|[itemName]|[itemDesc],...
${objectDict} Create Dictionary
... objectType=url
... isValid=${1}
... addItemList=abcd&def
${rescode} ${objectId} AddObject2 ${1} ${objectDict}
# 创建策略
${policyDict} Create Dictionary
... policyName=test_policy_add
... policyType=tsg_security
... action=intercept
... effectiveRange=Nursurtan|Transtelecom&Astel,|Astel&Transtelecom
... userRegion=protocol:HTTP,keyring:${1}
... referenceObject=${objectId}|TSG_SECURITY_DESTINATION_ADDR
... isValid=${0}
${rescode} ${policyId} AddPolicy2 ${1} ${policyDict}
case0x
[Documentation]
... 字典说明(所有参数均不可省略):
... policyType tsg_security/pxy_manipulation
... appId HTTP/SSL/DNS/MAIL/FTP
... cfg (IP) ip|[v4/v6]|[ClientIP*]|[ClientPort*]|[ServerIP*]|[ServerPort*]|[Any/TCP/UDP]
... (String) str|[SubscriberID*]|[key*]=[value*]&...
... (Signature) dstr|[SubscriberID*]|[req_hdr/res_hdr]=[User-Agent/Cookie/Set-Cookie/Content-Type]#[value*]&...
... ps: '&'配置多条时以最后一个'|'后开始
... 可参考下面例1-3
# 例1IP类策略验证
${dict1} Create Dictionary
... policyType=tsg_security
... appId=HTTP
... cfg=ip|v4|192.168.50.24|10000|172.16.0.1|80|UDP
PolicyVertify ${dict1}
# 例2String类策略验证
${dict2} Create Dictionary
... policyType=tsg_security
... appId=FTP
... cfg=str|$jwctest|account=anony*
PolicyVertify ${dict2}
# 例3Signature类策略验证
${dict} Create Dictionary
... policyType=tsg_security
... appId=FTP # HTTP/SSL/DNS/MAIL/FTP
... cfg=dstr|$test|req_hdr=User-Agent#aa&res_hdr=Content-Type#bb
PolicyVertify ${dict}