xref: /openbmc/openbmc-test-automation/gui/gui_test/operations_menu/test_firmware_sub_menu.robot (revision 025063e5276721ce64b872bc18df6ce96cb8aa95)
1*** Settings ***
2
3Documentation  Test OpenBMC Firmware Update" sub menu of "Operations".
4
5Resource        ../../lib/gui_resource.robot
6
7Suite Setup     Suite Setup Execution
8Suite Teardown  Close Browser
9
10Test Tags      Firmware_Sub_Menu
11
12*** Variables ***
13
14${xpath_firmware_heading}                //h1[text()="Firmware"]
15${xpath_add_file_button}                 //*[@id='image-file']
16${xpath_start_update_button}             //*[@data-test-id="firmware-button-startUpdate"]
17${xpath_switch_to_running}               //*[@data-test-id="firmware-button-switchToRunning"]
18
19*** Test Cases ***
20
21Verify Navigation To Firmware Page
22    [Documentation]  Verify navigation to firmware page.
23    [Tags]  Verify_Navigation_To_Firmware_Page
24
25    Page Should Contain Element  ${xpath_firmware_heading}
26
27
28Verify Existence Of All Sections In Firmware Page
29    [Documentation]  Verify existence of all sections in firmware page.
30    [Tags]  Verify_Existence_Of_All_Sections_In_Firmware_Page
31
32    Page Should Contain  BMC and server
33    Page Should Contain  Update firmware
34    Page Should Contain  Access key expiration
35
36
37***  Power Off Test Cases  ***
38
39Verify Existence Of All Buttons In Firmware Page At Host Power Off
40    [Documentation]  Verify existence of all buttons in firmware page at host power off.
41    [Tags]  Verify_Existence_Of_All_Buttons_In_Firmware_Page_At_Host_Power_Off
42
43    Redfish Power Off  stack_mode=skip
44
45    Page Should Contain Element  ${xpath_add_file_button}
46    Page Should Contain Element  ${xpath_start_update_button}
47
48
49Verify Existence Of All Sub Sections Under BMC And Server Section At Poweroff State
50    [Documentation]  Verify existence of all sub sections under BMC and server section at poweroff state.
51    [Tags]  Verify_Existence_Of_All_Sub_Sections_Under_BMC_And_Server_Section_At_Poweroff_State
52
53    Redfish Power Off  stack_mode=skip  quiet=1
54
55    Page Should Contain  Running image
56    Page Should Contain  Backup image
57    Page Should Contain  Temporary
58    Page Should Contain  Permanent
59    Element Should Be Visible  ${xpath_switch_to_running}
60
61
62***  Power On Test Cases  ***
63
64Verify Existence Of All Sub Sections Under BMC And Server Section At Power On State
65    [Documentation]  Verify existence of all sub sections under BMC and server section at power on state.
66    [Tags]  Verify_Existence_Of_All_Sub_Sections_Under_BMC_And_Server_Section_At_Power_On_State
67
68    Redfish Power On  stack_mode=skip  quiet=1
69
70    Page Should Contain  Running image
71    Page Should Contain  Backup image
72    Page Should Contain  Temporary
73    Page Should Contain  Permanent
74    Element Should Be Disabled  ${xpath_switch_to_running}
75
76
77Verify Existence Of All Buttons In Firmware Page At Host Power On
78    [Documentation]  Verify existence of all buttons in firmware page at host power on.
79    [Tags]  Verify_Existence_Of_All_Buttons_In_Firmware_Page_At_Host_Power_On
80
81    Redfish Power On  stack_mode=skip
82
83    Element Should Be Disabled  ${xpath_add_file_button}
84    Element Should Be Disabled  ${xpath_start_update_button}
85
86
87*** Keywords ***
88
89Suite Setup Execution
90   [Documentation]  Do test case setup tasks.
91
92    Launch Browser And Login GUI
93    Click Element  ${xpath_operations_menu}
94    Click Element  ${xpath_firmware_update_sub_menu}
95    Wait Until Keyword Succeeds  30 sec  10 sec  Location Should Contain  firmware
96    Wait Until Element Is Not Visible   ${xpath_page_loading_progress_bar}  timeout=30
97