*** Settings *** Documentation This is RobotFrame work script Library ExtendedSelenium2Library Library OperatingSystem Library XvfbRobot *** Variables *** ${PORTAL_URL} http://portal.api.simpledemo.onap.org:8990 ${PORTAL_ENV} /ONAPPORTALSDK ${PORTAL_LOGIN_URL} ${PORTAL_URL}${PORTAL_ENV}/login.htm ${PORTAL_HOME_PAGE} ${PORTAL_URL}${PORTAL_ENV}/welcome ${PORTAL_MICRO_ENDPOINT} ${PORTAL_URL}${PORTAL_ENV}/commonWidgets ${PORTAL_HOME_URL} ${PORTAL_URL}${PORTAL_ENV}/applicationsHome ${GLOBAL_APPLICATION_ID} robot-functional ${GLOBAL_PORTAL_ADMIN_USER} demo ${GLOBAL_PORTAL_ADMIN_PWD} demo ${GLOBAL_SELENIUM_BROWSER} chrome ${GLOBAL_SELENIUM_BROWSER_CAPABILITIES} Create Dictionary ${GLOBAL_SELENIUM_DELAY} 0 ${GLOBAL_SELENIUM_BROWSER_IMPLICIT_WAIT} 5 ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} 15 ${GLOBAL_BUILD_NUMBER} 0 ${GLOBAL_VM_PRIVATE_KEY} ${EXECDIR}/robot/assets/keys/robot_ssh_private_key.pvt *** Test Cases *** #Portal admin Login To Portal GUI # [Documentation] Logs into Portal GUI ## Setup Browser # Start Virtual Display 1920 1080 # Open Browser ${PORTAL_LOGIN_URL} chrome ## Go To ${PORTAL_LOGIN_URL} # Maximize Browser Window # Set Selenium Speed ${GLOBAL_SELENIUM_DELAY} # Set Browser Implicit Wait ${GLOBAL_SELENIUM_BROWSER_IMPLICIT_WAIT} # Log Logging in to ${PORTAL_URL}${PORTAL_ENV} # # Handle Proxy Warning # Title Should Be Login # Input Text xpath=//input[@id='loginId'] ${GLOBAL_PORTAL_ADMIN_USER} # Input Password xpath=//input[@id='password'] ${GLOBAL_PORTAL_ADMIN_PWD} # Click Element //*[@id="loginBtn"] # Wait Until Page Contains Element xpath=//img[@src='app/fusionapp/icons/logo_onap_transbg.png'] ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} # Log Logged in to ${PORTAL_URL}${PORTAL_ENV} SDKPortalAdmin Navigation Application Link Tab [Documentation] Logs into Portal GUI as Portal admin Comment Click Element xpath=.//h3[contains(text(),'xDemo App')]/following::div[1] Comment Go To ${PORTAL_HOME_PAGE} Comment Dismiss Alert accept=false #Scroll Element Into View xpath=//span[@id='tab-Home'] #Click Element xpath=//span[@id='tab-Home'] #Click Element xpath=(//span[@id='tab-xDemo-App']/following::i[@class='ion-close-round'])[1] Comment Click Element xpath=.//h3[contains(text(),'xDemo App')]/following::div[1] #Validate SDK Sub Menu # [Documentation] Logs into SDK GUI as Portal admin # Page Should Contain Home # Page Should Contain Sample Pages # Page Should Contain Reports # Page Should Contain Profile # Page Should Contain Admin ##Click Sample Pages and validate sub Menu # #[Documentation] Click Sample Pages # #Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # #Click Link xpath=//a[@id='parent-item-Sample-Pages'] # #Element Text Should Be xpath=//a[@title='Collaboration'] Collaboration # #Element Text Should Be xpath=//a[@title='Notebook'] Notebook # #Click Link xpath=//a[contains(@title,'Collaboration')] # #Page Should Contain User List # #Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # #Click Link xpath=//a[@id='parent-item-Sample-Pages'] # #Click Link xpath=//a[contains(@title,'Notebook')] # #Element Text Should Be xpath=//h1[contains(.,'Notebook')] Notebook #Click Reports and validate sub Menu # [Documentation] Click Reports Tab # #Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=//a[@id='parent-item-Reports'] # Element Text Should Be xpath=//a[@title='All Reports'] All Reports # Element Text Should Be xpath=//a[@title='Create Reports'] Create Reports # Click Link xpath=//a[contains(@title,'All Reports')] # Page Should Contain Report search # Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=//a[@id='parent-item-Reports'] # Click Link xpath=//a[contains(@title,'Create Reports')] # Page Should Contain Report Wizard #Click Profile and validate sub Menu # [Documentation] Click Profile Tab # Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=//a[@id='parent-item-Profile'] # Element Text Should Be xpath=//a[@title='Search'] Search # Element Text Should Be xpath=//a[@title='Self'] Self # Click Link xpath=//a[contains(@title,'Search')] # Page Should Contain Profile Search # Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=//a[@id='parent-item-Profile'] # Click Link xpath=//a[contains(@title,'Self')] # Page Should Contain Self Profile Detail #Click Admin and validate sub Menu # [Documentation] Click Admin Tab # Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=//a[@id='parent-item-Admin'] # Element Text Should Be xpath=//a[@title='Roles'] Roles # Element Text Should Be xpath=//a[@title='Role Functions'] Role Functions # Element Text Should Be xpath=//a[@title='Cache Admin'] Cache Admin # Element Text Should Be xpath=//a[@title='Menus'] Menus # Element Text Should Be xpath=//a[@title='Usage'] Usage # Click Link xpath=//a[contains(@title,'Roles')] # Page Should Contain Roles # Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=//a[@id='parent-item-Admin'] # Click Link xpath=//a[contains(@title,'Role Function')] # Page Should Contain Role Function # Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=.//a[@id='parent-item-Admin'] # #Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=//a[@id='parent-item-Admin'] # Click Link xpath=//a[contains(@title,'Cache Admin')] # Page Should Contain Cache Regions # Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=.//a[@id='parent-item-Admin'] # Click Link xpath=//a[@id='parent-item-Admin'] # Click Link xpath=//a[contains(@title,'Menus')] # Page Should Contain Admin Menu Items # Comment Select frame xpath=.//*[@id='tabframe-xDemo-App'] # Click Link xpath=//a[@id='parent-item-Admin'] # Click Link xpath=//a[@id='parent-item-Admin'] # Click Link xpath=//a[contains(@title,'Usage')] # Page Should Contain Current Usage Teardown [Documentation] Close All Open browsers Close All Browsers *** Keywords ***