blob: f4ac7cb060499a0717df6c2dc0a3c2ccdcfe43a0 [file] [log] [blame]
Rahul Maheshwarib940e192020-07-07 01:52:24 -05001*** Settings ***
2
3Documentation Test OpenBMC GUI "Overview" menu.
4
Rahul Maheshwari41747da2020-11-17 09:09:52 -06005Resource ../../lib/gui_resource.robot
manashsarma2544cb12020-08-23 14:25:08 -05006Resource ../../../lib/logging_utils.robot
manashsarmafb353662020-08-27 05:12:04 -05007Resource ../../../lib/list_utils.robot
manashsarma6d584de2020-08-30 02:33:07 -05008Resource ../../../lib/bmc_network_utils.robot
9
10Library String
Rahul Maheshwarib940e192020-07-07 01:52:24 -050011
rramyasr-in13242572022-11-08 01:44:52 -060012Suite Setup Run Keywords Launch Browser And Login GUI AND Redfish.Login
13Suite Teardown Run Keywords Close Browser AND Redfish.Logout
Rahul Maheshwarib940e192020-07-07 01:52:24 -050014Test Setup Test Setup Execution
15
16
17*** Variables ***
18
rramyasr-in5f280c02022-11-11 06:41:00 -060019${xpath_overview_page_header} //h1[contains(text(), "Overview")]
20${xpath_server_information_view_more_button} (//*[text()="View more"])[1]
21${xpath_firmware_information_view_more_button} (//*[text()="View more"])[2]
rramyasr-in40334392022-11-21 10:14:51 -060022${xpath_network_information_view_more_button} (//*[text()="View more"])[3]
rramyasr-in5f280c02022-11-11 06:41:00 -060023${xpath_power_information_view_more_button} (//*[text()="View more"])[4]
24${xpath_event_logs_view_more_button} (//*[text()="View more"])[5]
25${xpath_inventory_and_leds_view_more_button} (//*[text()="View more"])[6]
26${xpath_launch_host_console} //*[@data-test-id='overviewQuickLinks-button-solConsole']
27${xpath_led_button} //*[@data-test-id='overviewInventory-checkbox-identifyLed']
rramyasr-inb3442ed2023-03-01 10:48:52 -060028${xpath_dumps_view_more_button} (//*[text()="View more"])[7]
29${xpath_critical_logs_count} //dt[contains(text(),'Critical')]/following-sibling::dd[1]
rramyasr-ind99803f2023-03-21 07:08:01 -050030${xpath_warning_logs_count} //dt[contains(text(),'Warning')]/following-sibling::dd[1]
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -050031
Rahul Maheshwarib940e192020-07-07 01:52:24 -050032*** Test Cases ***
33
34Verify Existence Of All Sections In Overview Page
35 [Documentation] Verify existence of all sections in Overview page.
36 [Tags] Verify_Existence_Of_All_Sections_In_Overview_Page
37
rramyasr-in1a79b662022-06-13 00:25:50 -050038 Page Should Contain BMC date and time
Ashwini Chandrappa516f70d2021-12-14 01:21:29 -060039 Page Should Contain Firmware information
Rahul Maheshwarib940e192020-07-07 01:52:24 -050040 Page Should Contain Server information
Ashwini Chandrappa516f70d2021-12-14 01:21:29 -060041 Wait Until Page Contains Network information timeout=10
rramyasr-in532c37f2021-12-03 03:39:14 -060042 Page Should Contain Power information
43 Page Should Contain Event logs
44 Page Should Contain Inventory and LEDs
rramyasr-ine6818d12022-01-13 07:23:40 -060045 Page Should Contain Dumps
Rahul Maheshwarib940e192020-07-07 01:52:24 -050046
rramyasr-in19e553c2022-10-27 02:17:41 -050047
manashsarma6d584de2020-08-30 02:33:07 -050048Verify Network Information In Overview Page
49 [Documentation] Verify values under network information section.
George Keishingf9248952021-05-28 07:52:37 -050050 [Tags] Verify_Network_Information_In_Overview_Page
manashsarma6d584de2020-08-30 02:33:07 -050051
52 ${hostname}= Get BMC Hostname
53 Page Should Contain ${hostname}
54
55 # Get all IP addresses and prefix lengths on system.
56
rramyasr-in690fcd42022-10-27 03:25:39 -050057 ${resp}= Redfish.Get Attribute /redfish/v1/Managers/bmc/EthernetInterfaces/eth0 IPv4StaticAddresses
58 ${ip_addr}= Set Variable ${resp[0]['Address']}
59 Page Should Contain ${ip_addr}
manashsarma6d584de2020-08-30 02:33:07 -050060
manashsarma6d584de2020-08-30 02:33:07 -050061
manashsarmae18f99e2020-08-28 10:12:57 -050062Verify Server Information Section
63 [Documentation] Verify values under server information section in overview page.
64 [Tags] Verify_Server_Information_Section
65
66 ${redfish_machine_model}= Redfish.Get Attribute /redfish/v1/Systems/system/ Model
67 Page Should Contain ${redfish_machine_model}
68
69 ${redfish_serial_number}= Redfish.Get Attribute /redfish/v1/Systems/system/ SerialNumber
70 Page Should Contain ${redfish_serial_number}
71
72 ${redfish_motherboard_manufacturer}= Redfish.Get Attribute
manashsarma58de7d72020-09-07 21:05:21 -050073 ... /redfish/v1/Systems/system/ Manufacturer
manashsarmae18f99e2020-08-28 10:12:57 -050074
75 Page Should Contain ${redfish_motherboard_manufacturer}
76
77
manashsarma554ddec2020-08-26 00:46:02 -050078Verify BMC Information Section
79 [Documentation] Verify BMC information section in overview page.
80 [Tags] Verify_BMC_Information_Section
81
82 ${firmware_version}= Redfish Get BMC Version
83 Page Should Contain ${firmware_version}
84
85
manashsarma43568c22020-08-19 12:16:24 -050086Verify Edit Network Setting Button
87 [Documentation] Verify navigation to network setting page after clicking the button in overview page.
88 [Tags] Verify_Edit_Network_Setting_Button
89
rramyasr-in40334392022-11-21 10:14:51 -060090 Click Element ${xpath_network_information_view_more_button}
rramyasr-in732cc3f2022-11-16 05:30:57 -060091 Wait Until Page Contains Element ${xpath_network_heading}
manashsarma43568c22020-08-19 12:16:24 -050092
93
rramyasr-inb3442ed2023-03-01 10:48:52 -060094Verify Event Under Critical Event Logs Section
95 [Documentation] Verify event under critical event logs section in case of any event.
96 [Tags] Verify_Event_Under_Critical_Event_Logs_Section
97 [Teardown] Redfish Purge Event Log
manashsarmafb353662020-08-27 05:12:04 -050098
99 Redfish Purge Event Log
100 Click Element ${xpath_refresh_button}
101 Generate Test Error Log
Ashwini Chandrappa243a1f22021-07-26 01:10:04 -0500102 Click Element ${xpath_refresh_button}
George Keishinga91601b2023-03-21 09:35:49 +0530103
rramyasr-inb3442ed2023-03-01 10:48:52 -0600104 ${log_count}= Get Text ${xpath_critical_logs_count}
105 Should Be True '${log_count}' == '${1}'
manashsarmafb353662020-08-27 05:12:04 -0500106
107
rramyasr-ind99803f2023-03-21 07:08:01 -0500108Verify Event Under Warning Event Logs Section
109 [Documentation] Verify event under warning event logs section in case of any event.
110 [Tags] Verify_Event_Under_Warning_Event_Logs_Section
111 [Teardown] Redfish Purge Event Log
112
113 Redfish Purge Event Log
114 Click Element ${xpath_refresh_button}
115
116 # Generate a predictable error for testing purpose.
117 BMC Execute Command ${CMD_PREDICTIVE_ERROR}
118
119 Click Element ${xpath_refresh_button}
120
121 ${log_count}= Get Text ${xpath_warning_logs_count}
122 Should Be Equal As Integers ${log_count} 1
123
124
rramyasr-in40334392022-11-21 10:14:51 -0600125Verify View More Event Logs Button
126 [Documentation] Verify view more event log button in overview page.
127 [Tags] Verify_View_More_Event_Logs_Button
manashsarma7d0a4122020-08-23 13:41:03 -0500128
129 Generate Test Error Log
rramyasr-in40334392022-11-21 10:14:51 -0600130 Page Should Contain Element ${xpath_event_logs_view_more_button} timeout=30
131 Click Element ${xpath_event_logs_view_more_button}
rramyasr-in5f280c02022-11-11 06:41:00 -0600132 Wait Until Page Contains Element ${xpath_event_logs_heading} timeout=30
manashsarma7d0a4122020-08-23 13:41:03 -0500133
134
rramyasr-inb18e15e2022-08-11 05:22:20 -0500135Verify Host Console Button In Overview Page
136 [Documentation] Click host console button and verify page navigation to host console page.
137 [Tags] Verify_Host_Console_Button_In_Overview_Page
manashsarmaa3a25362020-08-23 09:23:28 -0500138
rramyasr-inb18e15e2022-08-11 05:22:20 -0500139 Click Element ${xpath_launch_host_console}
140 Wait Until Page Contains Element ${xpath_host_console_heading}
manashsarmaa3a25362020-08-23 09:23:28 -0500141
142
manashsarmaffb30932020-08-24 07:31:54 -0500143Verify Server LED Turn On
144 [Documentation] Turn on server LED via GUI and verify its status via Redfish.
145 [Tags] Verify_Server_LED_Turn_On
146
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500147 # Turn Off the server LED via Redfish and refresh GUI.
George Keishing52eb7c22022-03-11 10:58:53 -0600148 Set IndicatorLED State Off
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500149 Refresh GUI
manashsarmaffb30932020-08-24 07:31:54 -0500150
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500151 # Turn ON the LED via GUI.
rramyasr-in436de602023-03-03 03:13:10 -0600152 Click Element ${xpath_led_button}
manashsarmaffb30932020-08-24 07:31:54 -0500153
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500154 # Cross check that server LED ON state via Redfish.
George Keishing52eb7c22022-03-11 10:58:53 -0600155 Verify Identify LED State Via Redfish Lit
manashsarmaffb30932020-08-24 07:31:54 -0500156
157
158Verify Server LED Turn Off
159 [Documentation] Turn off server LED via GUI and verify its status via Redfish.
160 [Tags] Verify_Server_LED_Turn_Off
161
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500162 # Turn On the server LED via Redfish and refresh GUI.
George Keishing52eb7c22022-03-11 10:58:53 -0600163 Set IndicatorLED State Lit
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500164 Refresh GUI
manashsarmaffb30932020-08-24 07:31:54 -0500165
Ashwini Chandrappa90c6a812021-07-07 04:50:00 -0500166 # Turn OFF the LED via GUI.
manashsarmaffb30932020-08-24 07:31:54 -0500167 Click Element At Coordinates ${xpath_led_button} 0 0
168
169 # Cross check that server LED off state via Redfish.
George Keishing52eb7c22022-03-11 10:58:53 -0600170 Verify Identify LED State Via Redfish Off
manashsarmaffb30932020-08-24 07:31:54 -0500171
172
manashsarma65c9e142020-08-23 07:27:52 -0500173Verify BMC Time In Overview Page
174 [Documentation] Verify that BMC date from GUI matches with BMC time via Redfish.
175 [Tags] Verify_BMC_Time_In_Overview_Page
176
177 ${date_time}= Redfish.Get Attribute ${REDFISH_BASE_URI}Managers/bmc DateTime
178 ${converted_date}= Convert Date ${date_time} result_format=%Y-%m-%d
179
180 Page Should Contain ${converted_date}
181
182
manashsarma43458ff2021-08-17 05:42:47 -0500183Verify BMC Information At Host Power Off State
184 [Documentation] Verify that BMC information is displayed at host power off state.
185 [Tags] Verify_BMC_Information_At_Host_Power_Off_State
186
187 Redfish Power Off stack_mode=skip
188 ${firmware_version}= Redfish Get BMC Version
189 Page Should Contain ${firmware_version}
190
191
rramyasr-in305d23a2022-01-19 01:32:04 -0600192Verify View More Button For Dumps
193 [Documentation] Verify view more button for dumps button in overview page.
194 [Tags] Verify_View_More_Button_For_Dumps
195
rramyasr-inb3442ed2023-03-01 10:48:52 -0600196 Wait Until Page Contains Element ${xpath_dumps_view_more_button} timeout=30
197 Click Element ${xpath_dumps_view_more_button}
rramyasr-in5f280c02022-11-11 06:41:00 -0600198 Wait Until Page Contains Element ${xpath_dumps_header} timeout=30
199
200
201Verify View More Button Under Server Information Section
202 [Documentation] Verify view more button under server information section in overview page.
203 [Tags] Verify_View_More_Button_Under_Server_Information_Section
204
rramyasr-in40334392022-11-21 10:14:51 -0600205 Wait Until Page Contains Element ${xpath_server_information_view_more_button} timeout=30
206 Click Element ${xpath_server_information_view_more_button}
rramyasr-in5f280c02022-11-11 06:41:00 -0600207 Wait Until Page Contains Element ${xpath_inventory_and_leds_heading} timeout=30
208
209
210Verify View More Button Under Firmware Information Section
211 [Documentation] Verify view more button under firmware information section in overview page.
212 [Tags] Verify_View_More_Button_Under_Firmware_Information_Section
213
214 Wait Until Page Contains Element ${xpath_firmware_information_view_more_button} timeout=30
215 Click Element ${xpath_firmware_information_view_more_button}
216 Wait Until Page Contains Element ${xpath_firmware_heading} timeout=30
217
218
219Verify View More Button Under Network Information Section
220 [Documentation] Verify view more button under network information section in overview page.
George Keishing44cce892022-11-23 08:05:57 -0600221 [Tags] Verify_View_More_Button_Under_Network_Information_Section
rramyasr-in5f280c02022-11-11 06:41:00 -0600222
rramyasr-in40334392022-11-21 10:14:51 -0600223 Wait Until Page Contains Element ${xpath_network_information_view_more_button} timeout=30
224 Click Element ${xpath_network_information_view_more_button}
rramyasr-in5f280c02022-11-11 06:41:00 -0600225 Wait Until Page Contains Element ${xpath_network_heading} timeout=30
226
227
228Verify View More Button Under Power Information Section
229 [Documentation] Verify view more button under power information section in overview page.
George Keishing44cce892022-11-23 08:05:57 -0600230 [Tags] Verify_View_More_Button_Under_Power_Information_Section
rramyasr-in5f280c02022-11-11 06:41:00 -0600231
232 Wait Until Page Contains Element ${xpath_power_information_view_more_button} timeout=30
233 Click Element ${xpath_power_information_view_more_button}
234 Wait Until Page Contains Element ${xpath_power_heading} timeout=30
235
236
237Verify View More Button Under Event Logs Section
238 [Documentation] Verify view more button under event logs section in overview page.
239 [Tags] Verify_View_More_Button_Under_Event_Logs_Section
240
241 Wait Until Page Contains Element ${xpath_event_logs_view_more_button} timeout=30
242 Click Element ${xpath_event_logs_view_more_button}
243 Wait Until Page Contains Element ${xpath_event_logs_heading} timeout=30
244
245
246Verify View More Button Under Inventory And LEDs Section
247 [Documentation] Verify view more button under inventory and leds section in overview page.
248 [Tags] Verify_View_More_Button_Under_Inventory_And_LEDs_Section
249
250 Wait Until Page Contains Element ${xpath_inventory_and_leds_view_more_button} timeout=30
251 Click Element ${xpath_inventory_and_leds_view_more_button}
252 Wait Until Page Contains Element ${xpath_inventory_and_leds_heading} timeout=30
253
rramyasr-in305d23a2022-01-19 01:32:04 -0600254
Rahul Maheshwarib940e192020-07-07 01:52:24 -0500255*** Keywords ***
256
257Test Setup Execution
258 [Documentation] Do test case setup tasks.
259
260 Click Element ${xpath_overview_menu}
261 Wait Until Page Contains Element ${xpath_overview_page_header}
rramyasr-in7776e322022-10-10 11:01:13 -0500262 Wait Until Element Is Not Visible ${xpath_page_loading_progress_bar} timeout=30
George Keishing52eb7c22022-03-11 10:58:53 -0600263
rramyasr-in13242572022-11-08 01:44:52 -0600264
George Keishing52eb7c22022-03-11 10:58:53 -0600265Verify Identify LED State Via Redfish
266 [Documentation] Verify that Redfish identify LED system with given state.
267 [Arguments] ${expected_state}
268 # Description of argument(s):
269 # expected_state Expected value of Identify LED.
270
rramyasr-in436de602023-03-03 03:13:10 -0600271 ${led_state}= Redfish.Get Attribute /redfish/v1/Systems/system IndicatorLED
272 Should Be True '${led_state}' == '${expected_state}'
George Keishing52eb7c22022-03-11 10:58:53 -0600273
274
275Set IndicatorLED State
George Keishinge23afb52022-03-17 08:25:49 -0500276 [Documentation] Perform redfish PATCH operation.
George Keishing52eb7c22022-03-11 10:58:53 -0600277 [Arguments] ${led_state} ${expect_resp_code}=[200, 204]
278 # Description of argument(s):
279 # led_state IndicatorLED state to "off", "Lit" etc.
280 # expect_resp_code Expected HTTPS response code. Default [200, 204]
281
rramyasr-in436de602023-03-03 03:13:10 -0600282
283 Redfish.Patch /redfish/v1/Systems/system body={"IndicatorLED": "${led_state}"}
284 ... valid_status_codes=${expect_resp_code}
285