blob: ad380f1536d7922a24e35f9b7fd7d362ee1305ae [file] [log] [blame]
*** Settings ***
| Resource | common.robot
*** Test Cases ***
# Based on Robot test cases created by Dawn Zelinski (dz2438@att.com).
| Verify Home page and links
# Access Home page - All tests files use this as starting point
| | RefreshMainURL
# Verify the links
| | Page should contain link | Home
| | Page should contain link | MY VNFs
| | Page should contain link | Test
| | Page should contain link | Admin
| | Page should contain link | About us
| | Page Should Not Contain | ${USER_ID}
# Verify MY VNFs link will will ask for user entry
| | Click Link | MY VNFs
| | Wait Until Element Is Visible | id=userId | ${LONGTIME}
| | Input Text | id=userId | ${USERID}
| | Click Button | Submit
| | Page Should Contain | ${USER_ID}
| Verify Logout of user id
# Access Home page - All tests files use this as starting point
| | RefreshMainURL
| | Page Should Contain | ${USER_ID}
# Log out of user id and then see if My Vnfs asks for user entry
| | Click Element | id=more-button
# Line below also works.
#| | Click Element | xpath=(//*[@class='android-more-button mdl-button mdl-js-button mdl-button--primary'])
# Now Logout
| | Wait Until Element Is Visible | xpath=(//*[@class='mdl-menu__item mdl-js-ripple-effect']) | ${LONGTIME}
| | Click Element | xpath=(//*[@class='mdl-menu__item mdl-js-ripple-effect'])
| | Page Should Not Contain | ${USER_ID}
# Verify MY VNFs link will will ask for user entry
| | Click Link | MY VNFs
| | Wait Until Element Is Visible | id=userId | ${LONGTIME}
| | Input Text | id=userId | ${USERID}
| | Click Button | Submit
| | Page Should Contain | ${USER_ID}
| Test Uploading an existing VNF Reference file that was previously downloaded
# Access Home page - All tests files use this as starting point
| | RefreshMainURL
| | Click Link | MY VNFs
# Verify button element is ready before clicking it.
| | Wait Until Page Contains Element | xpath=(//*[@class='mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect mdl-button--primary']) | ${LONGTIME}
#| | Click Button | Create New VNF Type or VNFC Type
| | Click Button | Create New VNF Type
#| | Page Should Contain | Enter VNF type and VNFC to proceed
| | Page Should Contain | Enter VNF Type
| | Page Should Contain Element | id=vnfType
# Proceed without entering any new information
#| | Click Button | Proceed anyway
| | Click Button | Proceed To Upload
| | Page Should Contain Element | id=cmbAction
| | Click Button | Upload Reference File
| | Choose File | id=inputFile | ${CURDIR}/data/reference_AllAction_HealthCheckAnsible_0.0.1V.json
| | Sleep | ${SHORTTIME}
# Verify the screen is populated with the HealthCheck (action), dawnMay17 (VNF Type and ANSIBLE (device protocol)
| | ${theVNFType} | Get Value | id=txtVnfType
| | ${theAction} | Get Selected List Value | id=cmbAction
| | ${theProtocol} | Get Selected List Value | id=txtDeviceProtocol
| | Should Be Equal As Strings | ${theVNFType} | csit
| | Should Be Equal As Strings | ${theAction} | HealthCheck
| | Should Be Equal As Strings | ${theProtocol} | ANSIBLE
| Test Creation of VNF
# Access Home page - All tests files use this as starting point
| | RefreshMainURL
| | Click Link | MY VNFs
# Verify button element is ready before clicking it.
| | Wait Until Page Contains Element | xpath=(//*[@class='mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect mdl-button--primary']) | ${LONGTIME}
#| | Click Button | Create New VNF Type or VNFC Type
| | Click Button | Create New VNF Type
#| | Page Should Contain | Enter VNF type and VNFC to proceed
| | Page Should Contain | Enter VNF Type
| | Page Should Contain Element | id=vnfType
# Create a date to use in VNF Type to make it unique
| | ${THEDATE} | Get Current Date | result_format=%m%d%H%M%S | exclude_millis=True
| | Input Text | id=vnfType | csit${THEDATE}
| | Click Button | Next
| | Page Should Contain Element | id=cmbAction
# Verify 19 selections available
| | Select From List By Index | id=cmbAction | 19
# Select HealthCheck and ANSIBLE and verify it gets created
| | Select From List By Value | id=cmbAction | HealthCheck
| | Select From List By Value | id=txtDeviceProtocol | ANSIBLE
| | Click Button | saveToAppc
| | Sleep | ${SHORTTIME}
#| | Wait Until Page Contains | successfully uploaded the Reference Data | ${LONGTIME}
| | Click Link | MY VNFs
| | Page Should Contain | csit${THEDATE}
| Test Creation of VNF with multiple VNFCs
# This test is based on the 1806 Releases,
# APPC-C Design Tool User Guide for Self-Service Onboarding (section 5.1)
# Access Home page - All tests files use this as starting point
| | RefreshMainURL
| | Click Link | MY VNFs
# Verify button element is ready before clicking it.
| | Wait Until Page Contains Element | xpath=(//*[@class='mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect mdl-button--primary']) | ${LONGTIME}
#| | Click Button | Create New VNF Type or VNFC Type
| | Click Button | Create New VNF Type
| | Wait Until Page Contains Element | id=vnfType | ${LONGTIME}
# Create a date to use in VNF Type to make it unique
| | ${THEDATE} | Get Current Date | result_format=%m%d%H%M%S | exclude_millis=True
| | Input Text | id=vnfType | csit${THEDATE}
| | Click Button | Next
| | Wait Until Page Contains Element | id=cmbAction | ${LONGTIME}
# Populate the action and protocol
| | Select From List By Value | id=cmbAction | Configure
| | Select From List By Value | id=txtDeviceProtocol | NETCONF-XML
# Populate the other VNF descriptors
| | Select From List By Value | name=template | Y
| | Input Text | name=loginUserName | ${USER_ID}
| | Input Text | name=portNumber | 777
# Describe the first VNFC Type and enter the number of VMs for this VNFC Type
| | Input Text | name=samplevnfcType | VNFC_type_A
| | Input Text | name=samplevnfcFunctionCode | aaa
| | Select From List By Value | name=sampleIpaddress | Y
| | Select From List By Value | name=sampleGroupNotation | first-vnfc-name
| | Input Text | name=sampleGroupValue | pair
| | Input Text | name=txtNumber23 | 2
| | Click Button | Add VM Information
| | Wait Until Page Contains | VM Number: 2 | ${LONGTIME}
# Clear information about the first VNFC
| | Click Button | Clear VNFC Info
# Describe the second VNFC Type and enter the number of VMs for this VNFC Type
| | Input Text | name=samplevnfcType | VNFC_type_B
| | Input Text | name=samplevnfcFunctionCode | bbb
| | Select From List By Value | name=sampleIpaddress | Y
| | Select From List By Value | name=sampleGroupNotation | first-vnfc-name
| | Input Text | name=sampleGroupValue | pair
| | Input Text | name=txtNumber23 | 2
| | Click Button | Add VM Information
| | Wait Until Page Contains | VM Number: 4 | ${LONGTIME}
| | Click Button | saveToAppc
| | Sleep | ${SHORTTIME}
#| | Wait Until Page Contains | successfully uploaded the Reference Data | ${LONGTIME}
| | Click Link | MY VNFs
| | Wait Until Page Contains | ARTIFACT NAME | ${LONGTIME}
| | Page Should Contain | csit${THEDATE}
| Test Creation of VNF with VNFC box checked
# This test is based on the 1806 Releases,
# APPC-C Design Tool User Guide for Self-Service Onboarding (section 5.1)
# Access Home page - All tests files use this as starting point
| | RefreshMainURL
| | Click Link | MY VNFs
# Verify button element is ready before clicking it.
| | Wait Until Page Contains Element | xpath=(//*[@class='mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect mdl-button--primary']) | ${LONGTIME}
#| | Click Button | Create New VNF Type or VNFC Type
| | Click Button | Create New VNF Type
| | Wait Until Page Contains Element | id=vnfType | ${LONGTIME}
# Create a date to use in VNF Type to make it unique
| | ${THEDATE} | Get Current Date | result_format=%m%d%H%M%S | exclude_millis=True
| | Input Text | id=vnfType | csit${THEDATE}
# Check the box indicating VNFC templates
| | Select Checkbox | id=vnfcRequired
#| | Input Text | id=vnfcType | csitVNFC
| | Click Button | Next
| | Wait Until Page Contains Element | id=cmbAction | ${LONGTIME}
# Populate the action and protocol
| | Select From List By Value | id=cmbAction | Configure
| | Select From List By Value | id=txtDeviceProtocol | NETCONF-XML
# Populate the other VNF descriptors
| | Select From List By Value | name=template | Y
| | Input Text | name=loginUserName | ${USER_ID}
| | Input Text | name=portNumber | 777
# Describe the first VNFC Type and enter the number of VMs for this VNFC Type
| | Input Text | name=samplevnfcType | csitVNFC
| | Input Text | name=samplevnfcFunctionCode | aaa
| | Select From List By Value | name=sampleIpaddress | Y
| | Select From List By Value | name=sampleGroupNotation | first-vnfc-name
| | Input Text | name=sampleGroupValue | pair
| | Input Text | name=txtNumber23 | 2
| | Click Button | Add VM Information
| | Wait Until Page Contains | VM Number: 2 | ${LONGTIME}
# Clear information about the first VNFC
| | Click Button | Clear VNFC Info
# Describe the second VNFC Type and enter the number of VMs for this VNFC Type
| | Input Text | name=samplevnfcType | csitVNFC
| | Input Text | name=samplevnfcFunctionCode | bbb
| | Select From List By Value | name=sampleIpaddress | Y
| | Select From List By Value | name=sampleGroupNotation | first-vnfc-name
| | Input Text | name=sampleGroupValue | pair
| | Input Text | name=txtNumber23 | 2
| | Click Button | Add VM Information
| | Wait Until Page Contains | VM Number: 4 | ${LONGTIME}
| | Click Button | saveToAppc
| | Sleep | ${SHORTTIME}
| | Click Link | MY VNFs
| | Wait Until Page Contains | ARTIFACT NAME | ${LONGTIME}
| | Page Should Contain | csit${THEDATE}