From ca5693c162ed0d019b416b5784c0ee8eaf653abf Mon Sep 17 00:00:00 2001 From: jf9860 Date: Wed, 8 Mar 2017 16:17:56 -0500 Subject: TEST-3 Add retry loop to VID deploy step Replace delay with a retry loop with timeout to allow for distributed model to be available to VID. Change-Id: Ief536ff07a3335ced09de068b1e38c3e28bb4ea9 Signed-off-by: jf9860 --- .../vnf_orchestration_test_template.robot | 2 - robot/resources/vid/create_service_instance.robot | 53 ++++++++++++---------- 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/robot/resources/test_templates/vnf_orchestration_test_template.robot b/robot/resources/test_templates/vnf_orchestration_test_template.robot index 910b06b2..8c648951 100644 --- a/robot/resources/test_templates/vnf_orchestration_test_template.robot +++ b/robot/resources/test_templates/vnf_orchestration_test_template.robot @@ -47,8 +47,6 @@ Orchestrate VNF ${service_type}= Set Variable ${service} ${vf_module_name}= Catenate Vfmodule_Ete_Name${uuid} ${service_model_type} ${vnf_type} ${vf_modules} = Model Distribution For Directory ${service} - ## MSO polling is 60 second intervals - Sleep 70s Run Keyword If '${service}' == 'vVG' Create VVG Server ${uuid} Create Customer For VNF ${CUSTOMER_NAME} ${CUSTOMER_NAME} INFRA ${service_type} ${GLOBAL_AAI_CLOUD_OWNER} ${GLOBAL_OPENSTACK_SERVICE_REGION} Setup Browser diff --git a/robot/resources/vid/create_service_instance.robot b/robot/resources/vid/create_service_instance.robot index 2ea01ce2..204b7d67 100644 --- a/robot/resources/vid/create_service_instance.robot +++ b/robot/resources/vid/create_service_instance.robot @@ -11,47 +11,50 @@ Library DateTime Resource ../mso_interface.robot Resource vid_interface.robot -*** Keywords *** +*** Keywords *** Create VID Service Instance - [Documentation] Creates a service instance using VID - [Arguments] ${customer_name} ${service_model_type} ${service_type} ${service_name} + [Documentation] Creates a service instance using VID + [Arguments] ${customer_name} ${service_model_type} ${service_type} ${service_name} Go To VID HOME - Click Element partial link=Browse SDC Service - Page Should Contain Element xpath=//div/h1[text() = 'Browse SDC Service Models'] - Wait Until Page Contains Element xpath=//button[text() = 'Deploy'] 240s - Input Text When Enabled //input[@ng-model='searchString'] ${service_model_type} - Wait Until Element Is Visible xpath=//tr[td/span/text() = '${service_model_type}']/td/button[contains(text(),'Deploy')] 300000 + Wait Until Keyword Succeeds 300s 1s Wait For Model ${service_model_type} Press Key xpath=//tr[td/span/text() = '${service_model_type}']/td/button[text() = 'Deploy' and not(@disabled)] \\13 - ${uuid}= Generate UUID + ${uuid}= Generate UUID Wait Until Page Contains Element xpath=//input[@parameter-name='Instance Name'] 120s Wait Until Element Is Visible xpath=//input[@parameter-name='Instance Name'] 120s Xpath Should Match X Times //input[@parameter-name='Instance Name'] 1 Input Text When Enabled //input[@parameter-name='Instance Name'] ${service_name} - Select From List When Enabled //select[@prompt='Select Subscriber Name'] ${customer_name} + Select From List When Enabled //select[@prompt='Select Subscriber Name'] ${customer_name} Select From List WHen Enabled //select[@prompt='Select Service Type'] ${service_type} Click On Button When Enabled //div[@class = 'buttonRow']/button[text() = 'Confirm'] Wait Until Element Contains xpath=//div[@ng-controller= 'msoCommitController']/pre[@class = 'log ng-binding'] requestId timeout=120s - ${response text}= Get Text xpath=//div[@ng-controller= 'msoCommitController']/pre[@class = 'log ng-binding'] + ${response text}= Get Text xpath=//div[@ng-controller= 'msoCommitController']/pre[@class = 'log ng-binding'] Click On Button When Enabled //div[@class = 'buttonRow']/button[text() = 'Close'] - ${request_id}= Parse Request Id ${response text} + ${request_id}= Parse Request Id ${response text} ${service_instance_id}= Parse Instance Id ${response text} Poll MSO Get Request ${GLOBAL_MSO_STATUS_PATH}${request_id} COMPLETE [return] ${service_instance_id} - -Delete Service Instance By GUI - [Arguments] ${service_instance_id} ${customer_name} - Click On Element When Visible xpath=//a/span[@class='glyphicon glyphicon-remove'] - Click On Button When Visible xpath=//div[@class='buttonRow']/button[@ngx-enabled='true'] +Wait For Model + [Documentation] Distributed model may not yet be available. Kepp trying until it shows up. + [Arguments] ${service_model_type} + Click Element partial link=Browse SDC Service + Page Should Contain Element xpath=//div/h1[text() = 'Browse SDC Service Models'] + Wait Until Page Contains Element xpath=//button[text() = 'Deploy'] 240s + Input Text When Enabled //input[@ng-model='searchString'] ${service_model_type} + Wait Until Element Is Visible xpath=//tr[td/span/text() = '${service_model_type}']/td/button[contains(text(),'Deploy')] 10s + +Delete Service Instance By GUI + [Arguments] ${service_instance_id} ${customer_name} + Click On Element When Visible xpath=//a/span[@class='glyphicon glyphicon-remove'] + Click On Button When Visible xpath=//div[@class='buttonRow']/button[@ngx-enabled='true'] Wait Until Element Contains xpath=//div[@ng-controller='deletionDialogController']//div[@ng-controller= 'msoCommitController']/pre[@class = 'log ng-binding'] requestId timeout=120s ${response text}= Get Text xpath=//div[@ng-controller='deletionDialogController']//div[@ng-controller= 'msoCommitController']/pre[@class = 'log ng-binding'] ${request_id}= Parse Request Id ${response text} Poll MSO Get Request ${GLOBAL_MSO_STATUS_PATH}${request_id} COMPLETE - - -Search Service Instance - [Arguments] ${service_instance_id} ${customer_name} - Click Link xpath=//div[@heading = 'Search for Existing Service Instances']/a - Input Text When Enabled //input[@name='selectedServiceInstance'] ${service_instance_id} - Click On Button When Enabled //button[text() = 'Submit'] - \ No newline at end of file + + +Search Service Instance + [Arguments] ${service_instance_id} ${customer_name} + Click Link xpath=//div[@heading = 'Search for Existing Service Instances']/a + Input Text When Enabled //input[@name='selectedServiceInstance'] ${service_instance_id} + Click On Button When Enabled //button[text() = 'Submit'] -- cgit 1.2.3-korg