diff --git a/01-TestCase/tsg_adc/api_security/MonitorQuicTests.robot b/01-TestCase/tsg_adc/api_security/MonitorQuicTests.robot new file mode 100644 index 0000000..2c1b17d --- /dev/null +++ b/01-TestCase/tsg_adc/api_security/MonitorQuicTests.robot @@ -0,0 +1,77 @@ +*** Settings *** +Test Teardown DeletePolicyAndObjectAndApplicationAndSignature ${policyIds} ${objectids} +Force Tags tsg_adc tsg_security +Library OperatingSystem +Library Selenium2Library +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_adc/FileOperation.robot +Resource ../../../02-Keyword/tsg_bfapi/policy_object/Policy.robot +Resource ../../../03-Variable/ApplicationID.txt +Resource ../../../03-Variable/BifangApiVariable.txt +Resource ../../../02-Keyword/tsg_bfapi/policy_object/Application.robot +Resource ../../../02-Keyword/tsg_bfapi/policy_object/ProcessPolicyBody.robot +Library ../../../04-CustomLibrary/Library/VerifyPolicy.py +*** Variables *** +${policyIds} ${EMPTY} +${objectids} ${EMPTY} + +*** Test Cases *** +SecurityPolicy-Monitor-QUCI-00001 + [Tags] Monitor IP QUIC + Comment 创建IP + ${addItemList1} Create Dictionary isSession=endpoint ip=${testClentIP} port=0-65535 direction=0 protocol=0 isInitialize=0 + ${addItemLists} Create list ${addItemList1} + ${objectDict} Create Dictionary objectType=ip objectSubType=endpoint isValid=${1} addItemList=${addItemLists} + ${rescode} ${objectId} AddObjects ${1} ${objectDict} + ${objectids} set Variable ${objectId} + + + Comment 创建Monitor策略 + ${policyDict} Create Dictionary policyName=${TEST NAME} policyType=tsg_security action=monitor source=${objectId}|TSG_SECURITY_SOURCE_ADDR userRegion={"protocol":"QUCI"} isValid=${1} appIdObjects=${QUIC_ID} + ${rescode} ${policyId} AddPolicies 1 ${policyDict} v2 + ${policyIds} set Variable ${policyId}[0][policyIds][0] + + ${starttime} Get Time + #功能端验证 + Sleep ${policyVerificationSleepSeconds}s + + Comment 策略验证 + #新增策略验证 + #创建attributes中的字典 + ${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "2521"} + + ${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip":"${testClentIP}","port":"1","addrType":4,"protocol":"6","tableName":"TSG_SECURITY_SOURCE_ADDR"} + ${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip":"254.253.252.251","port":"1","addrType":4,"protocol":"6","tableName":"TSG_SECURITY_DESTINATION_ADDR"} + # 合成attributes字典集 + ${attributes} Create List ${app_id} ${ipsource} ${ipdestination} + ${verifySession} Create Dictionary attributes=${attributes} + ${verifyList} Create Dictionary policyType=tsg_security verifySession=${verifySession} + log ${verifyList} + ${rescode} ${resData} VerifyPolicies ${verifyList} + # 打印检查结果 + ${objectid_verify} Set Variable ${objectids} + ${objectid_verify} Catenate SEPARATOR=, ${objectid_verify} ${policyIds} + # # 调用关键字 提取应答json获取其中所有的id值,并判断新下发的id值是否在应答json的id中 + log ${objectid_verify} + ${testType} Evaluate type($objectid_verify) + ${testType} Evaluate type($resData) + log ${resData} + sleep 5 + ${ok} VerifyProxy ${resData} ${objectid_verify} + Should Be Equal As Strings ${ok} true + + + Comment 功能端验证HTTP验证 + Open Browser https://www.facebook.com ${browserType} + sleep 2 + ${text} Get Text xpath=//*[@id="content"]/div/div/div/div[1]/h2 + Should Be Equal As Strings ${text} 联系你我,分享生活,尽在 Facebook + + Comment 日志验证 + #日志验证 + ${s} Convert to String ${policyIds} + ${returnvalue} GetLogList_new security_event_log ${starttime} ${testClentIP} ${s} common_schema_type QUIC + Should Be Equal As Strings ${returnvalue} true + \ No newline at end of file