Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ODF-4.18 [tier2] tests/functional/ui/test_odf_storage_consumption_trend.py::TestConsumptionTrendUI::test_estimated_days_until_full_ui #11513

Open
aliakseimakarau opened this issue Feb 27, 2025 · 0 comments

Comments

@aliakseimakarau
Copy link

Running test tests/functional/ui/test_odf_storage_consumption_trend.py::TestConsumptionTrendUI::test_estimated_days_until_full_ui on the s390x arch does fail:

09:11:23 - MainThread - ocs_ci.ocs.ui.validation_ui - INFO  - Age of the cluster in days: 10                                                                                                                                                                                                                       
09:11:23 - MainThread - ocs_ci.utility.utils - INFO  - Executing command: oc --kubeconfig /opt/clusters/m1322001/ocp4-workdir/auth/kubeconfig -n openshift-storage get Pod  -n openshift-storage --selector=app=rook-ceph-tools -o yaml                                                                            
09:11:23 - MainThread - ocs_ci.utility.utils - INFO  - Executing command: oc --kubeconfig /opt/clusters/m1322001/ocp4-workdir/auth/kubeconfig -n openshift-storage get Pod  -n openshift-storage --selector=app=rook-ceph-tools -o yaml                                                                            
09:11:23 - MainThread - ocs_ci.ocs.resources.pod - INFO  - These are the ceph tool box pods: ['rook-ceph-tools-5b69bc969c-hlmhj']                                                                                                                                                                                  
09:11:23 - MainThread - ocs_ci.utility.utils - INFO  - Executing command: oc --kubeconfig /opt/clusters/m1322001/ocp4-workdir/auth/kubeconfig -n openshift-storage get Pod rook-ceph-tools-5b69bc969c-hlmhj -n openshift-storage                                                                                   
09:11:23 - MainThread - ocs_ci.utility.utils - INFO  - Executing command: oc --kubeconfig /opt/clusters/m1322001/ocp4-workdir/auth/kubeconfig -n openshift-storage get Pod  -n openshift-storage -o yaml                                                                                                           
09:11:27 - MainThread - ocs_ci.ocs.resources.pod - INFO  - Pod name: rook-ceph-tools-5b69bc969c-hlmhj                                                                                                                                                                                                              
09:11:27 - MainThread - ocs_ci.ocs.resources.pod - INFO  - Pod status: Running                                                                                                                                                                                                                                     
09:11:27 - MainThread - ocs_ci.utility.utils - INFO  - Executing command: oc -n openshift-storage rsh rook-ceph-tools-5b69bc969c-hlmhj ceph df --format json-pretty                                                                                                                                                
09:11:28 - MainThread - ocs_ci.ocs.ui.validation_ui - INFO  - The used capacity from the cluster is: 5.80413818359375                                                                                                                                                                                              
09:11:28 - MainThread - ocs_ci.ocs.ui.validation_ui - INFO  - The available capacity from the cluster is: 1494.1958618164062                                                                                                                                                                                       
09:11:28 - MainThread - ocs_ci.ocs.ui.validation_ui - INFO  - Average of storage consumption per day: 0.580413818359375                                                                                                                                                                                            
09:11:28 - MainThread - ocs_ci.ocs.ui.validation_ui - INFO  - Estimated days calculated are 2574                                                                                                                                                                                                                   
09:11:29 - MainThread - ocs_ci.framework.pytest_customization.ocscilib - INFO  - Adjusted timeout for MG is 3600 seconds                                                                                                                                                                                           
09:11:29 - ThreadPoolExecutor-0_0 - ocs_ci.ocs.utils - INFO  - RUNNING IN CTX: m1322001 RUNID: = 1740643737                                                                                                                                                                                                        
09:11:29 - ThreadPoolExecutor-0_0 - ocs_ci.ocs.utils - INFO  - Must gather image: quay.io/rhceph-dev/ocs-must-gather:latest-4.18 will be used.                                                                                                                                                                     
09:11:29 - ThreadPoolExecutor-0_0 - ocs_ci.ocs.utils - INFO  - OCS logs will be placed in location /opt/clusters/m1322001/ocs-ci-logs/failed_testcase_ocs_logs_1740643737/test_estimated_days_until_full_ui_ocs_logs/m1322001/ocs_must_gather                                                                      
09:11:29 - ThreadPoolExecutor-0_0 - ocs_ci.ocs.utils - INFO  - Must gather std error log will be placed in: /opt/clusters/m1322001/ocs-ci-logs/failed_testcase_ocs_logs_1740643737/test_estimated_days_until_full_ui_ocs_logs/m1322001/ocs_must_gather/mg_output_1740643889.107164.log                             
09:11:29 - ThreadPoolExecutor-0_0 - ocs_ci.utility.utils - INFO  - Executing command: oc --kubeconfig /opt/clusters/m1322001/ocp4-workdir/auth/kubeconfig adm must-gather --image=quay.io/rhceph-dev/ocs-must-gather:latest-4.18 --dest-dir=/opt/clusters/m1322001/ocs-ci-logs/failed_testcase_ocs_logs_1740643737/
09:15:58 - MainThread - ocs_ci.ocs.utils - INFO  - None                                                                                                                                                                                                                                                            
09:15:58 - MainThread - ocs_ci.framework.pytest_customization.reports - INFO  - duration reported by tests/functional/ui/test_odf_storage_consumption_trend.py::TestConsumptionTrendUI::test_estimated_days_until_full_ui immediately after test execution: 51.71                                                  
FAILED                                                                                                                                                                                                                                                                                                             
___________ TestConsumptionTrendUI.test_estimated_days_until_full_ui ___________                                                                                                                                                                                                                                   
                                                                                                                                                                                                                                                                                                                   
self = <tests.functional.ui.test_odf_storage_consumption_trend.TestConsumptionTrendUI object at 0x7fe5c9385e40>                                                                                                                                                                                                    
setup_ui_class = <selenium.webdriver.chrome.webdriver.WebDriver (session="27453c64d7774cd46a99a9fd06bbe3ac")>                                                                                                                                                                                                      
                                                                                                                                                                                                                                                                                                                   
    @polarion_id("OCS-6260")                                                                                                                                                                                                                                                                                       
    def test_estimated_days_until_full_ui(self, setup_ui_class):                                                                                                                                                                                                                                                   
        """                                                                                                                                                                                                                                                                                                        
        Verify the accuracy of ‘Estimated days until full’  in the widget                                                                                                                                                                                                                                          
            1. Get the value of storage utilised, total storage, age of the cluster                                                                                                                                                                                                                                
                and calculate Average of storage consumption and 'Estimated days until full'.                                                                                                                                                                                                                      
            2. Compare the above calculated value with the ‘Estimated days until full’ in the widget (UI                                                                                                                                                                                                           
                                                                                                                                                                                                                                                                                                                   
        """                                                                                                                                                                                                                                                                                                        
        validation_ui_obj = ValidationUI()                                                                                                                                                                                                                                                                         
        block_and_file_page = (                                                                                                                                                                                                                                                                                    
            PageNavigator()                                                                                                                                                                                                                                                                                        
            .nav_odf_default_page()                                                                                                                                                                                                                                                                                
            .nav_storage_systems_tab()                                                                                                                                                                                                                                                                             
            .nav_storagecluster_storagesystem_details()                                                                                                                                                                                                                                                            
            .nav_block_and_file()                                                                                                                                                                                                                                                                                  
        )                                                                                                                                                                                                                                                                                                          
        est_days = block_and_file_page.get_est_days_from_ui()                                                                                                                                                                                                                                                      
        average = block_and_file_page.get_avg_consumption_from_ui()                                                                                                                                                                                                                                                
        logger.info(f"From the UI, Estimated Days: {est_days} and Average: {average}")                                                                                                                                                                                                                             
        days_avg_tpl = validation_ui_obj.calculate_est_days_and_average_manually()                                                                                                                                                                                                                                 
        first_validation = est_days == days_avg_tpl[0]                                                                                                                                                                                                                                                             
        # rel_tol 0.1 means upto 10% tolerance, which means that difference between  manual and UI est days is up to 10%                                                                                                                                                                                           
        second_validation = math.isclose(est_days, days_avg_tpl[0], rel_tol=0.1)                                                                                                                                                                                                                                   
        if first_validation:                                                                                                                                                                                                                                                                                       
            logger.info(                                                                                                                                                                                                                                                                                           
                "Manually calculated and UI values are exactly matched for 'Estimated days until full'"                                                                                                                                                                                                            
            )                                                                                                                                                                                                                                                                                                      
        elif second_validation:                                                                                                                                                                                                                                                                                    
            logger.warning(                                                                                                                                                                                                                                                                                        
                "Manually calculated and UI values are matched with upto 10% difference for 'Estimated days until full'"                                                                                                                                                                                           
            )                                                                                                                                                                                                                                                                                                      
>       assert (                                                                                                                                                                                                                                                                                                   
            first_validation or second_validation                                                                                                                                                                                                                                                                  
        ), "'Estimated days until full' is wrongly displayed in UI"                                                                                                                                                                                                                                                
E       AssertionError: 'Estimated days until full' is wrongly displayed in UI                                                                                                                                                                                                                                     
E       assert (False or False)                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                   
tests/functional/ui/test_odf_storage_consumption_trend.py:141: AssertionError                                                                                                                                                                                                                                      
                                                                                                                                                                                                                                                                                                                   
------------------------------ live log teardown ------------------------------- 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant