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
2020-04-17 19:33:15 +08:00

86 lines
4.2 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

*** 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}