Example #1
0
    def validate_eap_servers_monitoring_utilization(self):
        navigate(self.web_session).get("{}/middleware_server/show_list".format(
            self.web_session.MIQ_URL))
        assert self.ui_utils.waitForTextOnPage(
            self.web_session.HAWKULAR_PROVIDER_NAME, 10)
        servers(self.web_session).navigate_to_non_container_eap()

        self.web_driver.find_element_by_xpath(
            "//*[@title='Monitoring']").click()
        self.ui_utils.waitForElementOnPage(
            By.ID,
            'middleware_server_monitoring_choice__middleware_server_perf', 5)
        self.web_driver.find_element_by_id(
            'middleware_server_monitoring_choice__middleware_server_perf'
        ).click()
        assert self.ui_utils.waitForTextOnPage('Options', 30)

        # Validate that graphs are present
        assert self.ui_utils.isTextOnPage('JVM Heap Usage (Bytes)')
        assert self.ui_utils.isTextOnPage('Non Heap Usage (Bytes)')
        assert self.ui_utils.isTextOnPage('GC Duration (ms)')
        assert self.ui_utils.isTextOnPage('Web Sessions')
        assert self.ui_utils.isTextOnPage('Active')
        assert self.ui_utils.isTextOnPage('Expired')
        assert self.ui_utils.isTextOnPage('Rejected')

        assert self.ui_utils.isTextOnPage('Transactions')
        assert self.ui_utils.isTextOnPage('Committed')
        assert self.ui_utils.isTextOnPage('Timed-out')
        assert self.ui_utils.isTextOnPage('Heuristic')
        assert self.ui_utils.isTextOnPage('Aborted')
        assert self.ui_utils.isTextOnPage('Application Failure')
        assert self.ui_utils.isTextOnPage('Resource Failure')

        return True
Example #2
0
    def validate_eap_servers_monitoring_utilization(self):
        navigate(self.web_session).get("{}/middleware_server/show_list".format(self.web_session.MIQ_URL))
        assert self.ui_utils.waitForTextOnPage(self.web_session.HAWKULAR_PROVIDER_NAME, 10)
        servers(self.web_session).navigate_to_non_container_eap()

        self.web_driver.find_element_by_xpath("//*[@title='Monitoring']").click()
        self.ui_utils.waitForElementOnPage(By.ID, 'middleware_server_monitoring_choice__middleware_server_perf', 5)
        self.web_driver.find_element_by_id('middleware_server_monitoring_choice__middleware_server_perf').click()
        assert self.ui_utils.waitForTextOnPage('Options', 30)

        # Validate that graphs are present
        assert self.ui_utils.isTextOnPage('JVM Heap Usage (Bytes)')
        assert self.ui_utils.isTextOnPage('Non Heap Usage (Bytes)')
        assert self.ui_utils.isTextOnPage('GC Duration (ms)')
        assert self.ui_utils.isTextOnPage('Web Sessions')
        assert self.ui_utils.isTextOnPage('Active')
        assert self.ui_utils.isTextOnPage('Expired')
        assert self.ui_utils.isTextOnPage('Rejected')

        assert self.ui_utils.isTextOnPage('Transactions')
        assert self.ui_utils.isTextOnPage('Committed')
        assert self.ui_utils.isTextOnPage('Timed-out')
        assert self.ui_utils.isTextOnPage('Heuristic')
        assert self.ui_utils.isTextOnPage('Aborted')
        assert self.ui_utils.isTextOnPage('Application Failure')
        assert self.ui_utils.isTextOnPage('Resource Failure')

        return True
Example #3
0
    def wait_for_datasource_to_be_deleted(self, starting_count, time_to_wait):

        servers(self.web_session).navigate_and_refresh_provider()
        servers(self.web_session).navigate_to_non_container_eap()
        self.web_session.web_driver.find_element_by_xpath(
            "//td[contains(.,'Middleware Datasources')]").click()
        assert self.ui_utils.waitForTextOnPage('All Middleware Datasources',
                                               15)

        currentTime = time.time()

        while True:
            if len(self.ui_utils.get_list_table_as_elements()
                   ) < starting_count:
                break

            if time.time() - currentTime >= time_to_wait:
                self.web_session.logger.error(
                    "Timed out waiting for Datasource to be Deleted in Datasource List."
                )
                return False

            time.sleep(2)
            self.web_driver.refresh()

        return True
Example #4
0
    def validate_messagings_monitoring_utilization_jms_queues(self):

        servers(self.web_session).navigate_to_non_container_eap()
        if self.ui_utils.get_generic_table_as_dict().get(
                'Middleware Messagings') == '0':
            pytest.skip("Skip test - EAP has \"0\" Middleware Messagings")

        self.web_session.web_driver.find_element_by_xpath(
            "//td[contains(.,'Middleware Messagings')]").click()
        assert self.ui_utils.waitForTextOnPage('JMS Queue', 30)

        self.ui_utils.click_on_row_containing_text('JMS Queue')
        assert self.ui_utils.waitForTextOnPage("Summary", 30)

        self.web_driver.find_element_by_xpath(
            "//*[@title='Monitoring']").click()
        self.ui_utils.waitForElementOnPage(
            By.ID,
            'middleware_messaging_monitoring_choice__middleware_messaging_perf',
            5)
        self.web_driver.find_element_by_id(
            'middleware_messaging_monitoring_choice__middleware_messaging_perf'
        ).click()
        assert self.ui_utils.waitForTextOnPage('Options', 30)

        # Validate that graphs are present
        assert self.ui_utils.isTextOnPage('Messages')

        assert self.ui_utils.isTextOnPage('Consumers')

        return True
Example #5
0
    def validate_datasources_monitoring_utilization(self):

        servers(self.web_session).navigate_to_non_container_eap()
        self.web_session.web_driver.find_element_by_xpath("//td[contains(.,'Middleware Datasources')]").click()
        assert self.ui_utils.waitForTextOnPage('ExampleDS', 15)


        self.web_driver.find_element_by_xpath("//td[contains(.,'ExampleDS')]").click()
        self.ui_utils.waitForTextOnPage("Nativeid", 15)

        self.web_driver.find_element_by_xpath("//*[@title='Monitoring']").click()
        self.ui_utils.waitForElementOnPage(By.ID, 'middleware_datasource_monitoring_choice__middleware_datasource_perf', 5)
        self.web_driver.find_element_by_id('middleware_datasource_monitoring_choice__middleware_datasource_perf').click()
        assert self.ui_utils.waitForTextOnPage('Options', 30)

        # Validate that graphs are present
        assert self.ui_utils.isTextOnPage('Availability')
        assert self.ui_utils.isTextOnPage('Available')
        assert self.ui_utils.isTextOnPage('In Use')
        assert self.ui_utils.isTextOnPage('Time-out')

        assert self.ui_utils.isTextOnPage('Responsiveness')
        assert self.ui_utils.isTextOnPage('Get Time')
        assert self.ui_utils.isTextOnPage('Creation Time')
        assert self.ui_utils.isTextOnPage('Wait Time')

        return True
Example #6
0
    def validate_datasources_monitoring_utilization(self):

        servers(self.web_session).navigate_to_non_container_eap()
        self.web_session.web_driver.find_element_by_xpath(
            "//td[contains(.,'Middleware Datasources')]").click()
        assert self.ui_utils.waitForTextOnPage('ExampleDS', 15)

        self.web_driver.find_element_by_xpath(
            "//td[contains(.,'ExampleDS')]").click()
        self.ui_utils.waitForTextOnPage("Nativeid", 15)

        self.web_driver.find_element_by_xpath(
            "//*[@title='Monitoring']").click()
        self.ui_utils.waitForElementOnPage(
            By.ID,
            'middleware_datasource_monitoring_choice__middleware_datasource_perf',
            5)
        self.web_driver.find_element_by_id(
            'middleware_datasource_monitoring_choice__middleware_datasource_perf'
        ).click()
        assert self.ui_utils.waitForTextOnPage('Options', 30)

        # Validate that graphs are present
        assert self.ui_utils.isTextOnPage('Availability')
        assert self.ui_utils.isTextOnPage('Available')
        assert self.ui_utils.isTextOnPage('In Use')
        assert self.ui_utils.isTextOnPage('Time-out')

        assert self.ui_utils.isTextOnPage('Responsiveness')
        assert self.ui_utils.isTextOnPage('Get Time')
        assert self.ui_utils.isTextOnPage('Creation Time')
        assert self.ui_utils.isTextOnPage('Wait Time')

        return True
Example #7
0
def test_cfui_get_ip(web_session):
    server = servers(web_session).find_non_container_eap_in_state("any")
    assert server

    pid = ssh(web_session, server.get("details").get("Hostname")).get_pid("standalone.sh")
    assert pid
    web_session.logger.info("pid: {}".format(pid))
Example #8
0
    def test_event_for_successful_deployment(self):
        navigate(self.web_session).get("{}/middleware_deployment/show_list".format(self.web_session.MIQ_URL))
        assert self.ui_utils.waitForTextOnPage("Middleware Deployments", 15)

        if self.ui_utils.get_elements_containing_text(self.APPLICATION_WAR):
            self.ui_utils.click_on_row_containing_text(self.APPLICATION_WAR)
        else:
            servers(self.web_session).deploy_application_archive()

        self.navigate_to_timeline()
        self.select_timepivot()
        self.select_event_group('Application')
        self.change_level()
        self.apply()
        self.verify_event('ok')

        return True
Example #9
0
def test_cfui_test(web_session):
    server = servers(web_session).find_eap_in_state("running")
    assert server
    
    ssh_result = ssh(web_session, server.get("details").get("Hostname")).execute_command('echo "Hello From Server: `hostname`"')
    assert ssh_result
    web_session.logger.info("ssh_result: {}".format(ssh_result))
    web_session.logger.info("result: {}".format(ssh_result.get('result')))
    web_session.logger.info("output: {}".format(ssh_result.get('output')))
Example #10
0
    def test_event_for_unsuccessful_deployment(self):

        # Existing issue: https://bugzilla.redhat.com/show_bug.cgi?id=1388040

        navigate(self.web_session).get("{}//middleware_server/show_list".format(self.web_session.MIQ_URL))

        # Find non-container EAP on which to deploy
        eap = servers(self.web_session).find_eap_in_state("Running", check_if_resolvable_hostname=True)
        assert eap, "No EAP found in desired state."

        self.ui_utils.click_on_row_containing_text(eap.get('Feed'))
        self.ui_utils.waitForTextOnPage('Version', 15)

        servers(self.web_session).add_server_deployment(self.TextFile)

        self.navigate_to_timeline()
        self.select_timepivot()
        self.select_event_group('Application')
        self.apply()
        self.verify_event('error')

        return True
Example #11
0
    def validate_messagings_monitoring_utilization_jms_topics(self):

        servers(self.web_session).navigate_to_non_container_eap()
        if self.ui_utils.get_generic_table_as_dict().get('Middleware Messagings') == '0':
            pytest.skip("Skip test - EAP has \"0\" Middleware Messagings")

        self.web_session.web_driver.find_element_by_xpath("//td[contains(.,'Middleware Messagings')]").click()
        assert self.ui_utils.waitForTextOnPage("Messaging Type", 10)
        self.ui_utils.click_on_row_containing_text('JMS Topic')
        assert self.ui_utils.waitForTextOnPage("Summary", 10)

        self.web_driver.find_element_by_xpath("//*[@title='Monitoring']").click()
        self.ui_utils.waitForElementOnPage(By.ID, 'middleware_messaging_monitoring_choice__middleware_messaging_perf', 5)
        self.web_driver.find_element_by_id('middleware_messaging_monitoring_choice__middleware_messaging_perf').click()

        assert self.ui_utils.waitForTextOnPage('Options', 30)

        # Validate that graphs are present
        assert self.ui_utils.isTextOnPage('Messages')

        assert self.ui_utils.isTextOnPage('Subscribers')

        return True
Example #12
0
def test_cfui_add_application_archive_overwrite(web_session):
    web_session.logger.info("Begin overwrite Application Archive")
    assert servers(web_session).add_deployment_overwrite()
Example #13
0
def test_cfui_add_application_archive_runtime_name(web_session):
    web_session.logger.info("Begin add runtime name to Application Archive")
    assert servers(web_session).add_deployment_runtime_name()
Example #14
0
def test_cfui_undeploy_application_archive(web_session):
    assert servers(web_session).undeploy_application_archive()
Example #15
0
def _test_cfui_eap_power_resume(web_session):
    web_session.logger.info("Begin Server Resume")
    assert servers(web_session).eap_power_resume()
Example #16
0
def test_cfui_add_disabled_application_archive(web_session):
    web_session.logger.info("Begin add disabled Application Archive")
    assert servers(web_session).add_deployment_disable()
Example #17
0
def _test_cfui_eap_power_suspend(web_session):
    web_session.logger.info("Begin Server Suspend")
    assert servers(web_session).eap_power_suspend()
Example #18
0
def test_cfui_server_policy_edit_eap(web_session):
    web_session.logger.info("Begin Server Policy Edit")
    # EAP choice "JBoss" or "WildFly"
    assert servers(web_session).server_policy_edit('eap')
Example #19
0
def test_cfui_add_application_archive_runtime_name(web_session):
    web_session.logger.info("Begin add runtime name to Application Archive")
    assert servers(web_session).add_deployment_runtime_name()
Example #20
0
def test_cfui_add_application_archive_overwrite(web_session):
    web_session.logger.info("Begin overwrite Application Archive")
    assert servers(web_session).add_deployment_overwrite()
Example #21
0
def test_cfui_add_disabled_application_archive(web_session):
    web_session.logger.info("Begin add disabled Application Archive")
    assert servers(web_session).add_deployment_disable()
Example #22
0
def test_cfui_eap_operation_resume(web_session):
    web_session.logger.info("Begin Server Resume (OPR-006)")
    assert servers(web_session).eap_power_resume()
Example #23
0
def test_cfui_redeploy_application_archive(web_session):
    assert servers(web_session).restart_application_archive()
Example #24
0
def _test_cfui_delete_datasource_detail_view(web_session):
    web_session.logger.info(
        "Begin Detail view delete datasource test (OPR-036a)")
    assert servers(web_session).add_datasource("H2-Test")
    assert datasources(web_session).delete_datasource_detail_view()
Example #25
0
def test_cfui_add_application_archive_cancel(web_session):
    web_session.logger.info("Begin test to cancel the addition of Application Archive")
    assert servers(web_session).add_deployment_cancel()
Example #26
0
def test_cfui_server_details(web_session):
    web_session.logger.info("Begin Server Details")
    assert servers(web_session).validate_server_details()
Example #27
0
def test_cfui_eap_operation_suspend(web_session):
    web_session.logger.info("Begin Server Suspend (OPR-005 and OPR-007)")
    assert servers(web_session).eap_power_suspend()
Example #28
0
def test_cfui_eap_power_restart(web_session):
    web_session.logger.info("Begin Server Restart")
    assert servers(web_session).eap_power_restart()
Example #29
0
def test_cfui_eap_operation_resume(web_session):
    web_session.logger.info("Begin Server Resume (OPR-006)")
    assert servers(web_session).eap_power_resume()
Example #30
0
def _test_cfui_eap_power_graceful_shutdown(web_session):
    web_session.logger.info("Begin Server Graceful Shutdown")
    assert servers(web_session).eap_power_graceful_shutdown()
Example #31
0
def test_cfui_redeploy_application_archive(web_session):
    assert servers(web_session).restart_application_archive()
Example #32
0
def test_cfui_add_jdbc_driver(web_session):
    web_session.logger.info("Begin Add JDBC driver test (OPR-034a)")
    assert servers(web_session).add_jdbc_driver()
Example #33
0
def test_cfui_start_application_archive(web_session):
    web_session.logger.info("Begin Start Application Archive (OPR-038)")
    assert servers(web_session).enable_application_archive()
Example #34
0
def _test_cfui_eap_power_graceful_shutdown(web_session):
    web_session.logger.info("Begin Server Graceful Shutdown")
    assert servers(web_session).eap_power_graceful_shutdown()
Example #35
0
def test_cfui_add_jdbc_driver(web_session):
    web_session.logger.info("Begin Add JDBC driver test (OPR-034a)")
    assert servers(web_session).add_jdbc_driver()
Example #36
0
def test_cfui_add_application_archive_cancel(web_session):
    web_session.logger.info(
        "Begin test to cancel the addition of Application Archive")
    assert servers(web_session).add_deployment_cancel()
Example #37
0
def test_cfui_add_xa_datasource(web_session):
    web_session.logger.info("Begin Add datasource test (OPR-035a)")
    assert servers(web_session).add_datasource("H2-Test-XA",xa=True)
    assert datasources(web_session).delete_datasource_list_view()
    assert servers(web_session).force_reload_eap()
Example #38
0
def _test_cfui_delete_datasource_detail_view(web_session):
    web_session.logger.info("Begin Detail view delete datasource test (OPR-036a)")
    assert servers(web_session).add_datasource("H2-Test")
    assert datasources(web_session).delete_datasource_detail_view()
Example #39
0
def test_cfui_servers_view(web_session):
    web_session.logger.info("Begin Server View")
    assert servers(web_session).validate_servers_list()
Example #40
0
    def delete_datasource_list_view(self):

        datasource_to_delete = self.datasource_desc
        servers(self.web_session).navigate_to_non_container_eap()
        self.web_session.web_driver.find_element_by_xpath(
            "//td[contains(.,'Middleware Datasources')]").click()
        assert self.ui_utils.waitForTextOnPage('All Middleware Datasources',
                                               15)
        assert self.ui_utils.waitForTextOnPage('ExampleDS', 15)
        datasources = self.ui_utils.get_list_table_as_elements()
        currrent_datasource_count = len(datasources)

        if not datasources:
            self.web_session.logger.warn("No Datasource found.")
            return True

        for row in datasources:
            datasource = self.ui_utils.find_row_in_element_table_by_text(
                datasources, datasource_to_delete)
            datasource_name = datasource[2].text
            server = datasource[3].text
            host_name = datasource[4].text

            self.web_session.logger.info(
                "Attempt to delete Dastasource: Name: {}  Server: {}  Host Name: {}"
                .format(datasource_name, server, host_name))
            self.web_session.web_driver.find_element_by_xpath(
                "//tr[2]/td[1]/input").click()

            self.ui_utils.web_driver.find_element_by_xpath(
                './/*[@title="Operations"]').click()
            assert self.ui_utils.waitForElementOnPage(
                By.ID,
                'middleware_datasource_operations_choice__middleware_datasource_remove',
                5)
            self.ui_utils.web_driver.find_element_by_id(
                'middleware_datasource_operations_choice__middleware_datasource_remove'
            ).click()
            self.ui_utils.accept_alert(5)

            # Hawkular Datasources can not be deleted
            try:
                if not self.ui_utils.waitForTextOnPage(
                        'datasources were removed', 5):
                    self.web_session.logger.warn(
                        "Datasource Not Removed: Name: {}  Server: {}  Host Name: {}"
                        .format(datasource_name, server, host_name))
                    # Deselect checkbox
                    datasource[0].click()
                    raise
                break
            except:
                assert self.ui_utils.waitForTextOnPage(
                    'Not removed datasources for {} on the provider itself'.
                    format(datasource_name), 5)
                datasources.remove(datasource)

        assert self.wait_for_datasource_to_be_deleted(
            currrent_datasource_count, (60 * 5))

        return True
Example #41
0
def test_cfui_server_details(web_session):
    web_session.logger.info("Begin Server Details")
    assert servers(web_session).validate_server_details()
Example #42
0
def test_cfui_servers_view(web_session):
    web_session.logger.info("Begin Server View")
    assert servers(web_session).validate_servers_list()
Example #43
0
def test_cfui_eap_operation_suspend(web_session):
    web_session.logger.info("Begin Server Suspend (OPR-005 and OPR-007)")
    assert servers(web_session).eap_power_suspend()
Example #44
0
def test_cfui_server_policy_edit_hawkular(web_session):
    web_session.logger.info("Begin Server Policy Edit")
    assert servers(web_session).server_policy_edit('provider')
Example #45
0
def test_cfui_server_policy_edit_eap(web_session):
    web_session.logger.info("Begin Server Policy Edit")
    # EAP choice "JBoss" or "WildFly"
    assert servers(web_session).server_policy_edit('eap')
Example #46
0
def test_cfui_eap_power_stop(web_session):
    web_session.logger.info("Begin Server Stop")
    assert servers(web_session).eap_power_stop()
Example #47
0
def test_cfui_eap_power_stop(web_session):
    web_session.logger.info("Begin Server Stop")
    assert servers(web_session).eap_power_stop()
Example #48
0
def _test_cfui_eap_power_reload(web_session):
    web_session.logger.info("Begin Server Reload")
    assert servers(web_session).eap_power_reload()
Example #49
0
def test_cfui_eap_power_restart(web_session):
    web_session.logger.info("Begin Server Restart")
    assert servers(web_session).eap_power_restart()
Example #50
0
def _test_cfui_eap_power_resume(web_session):
    web_session.logger.info("Begin Server Resume")
    assert servers(web_session).eap_power_resume()
Example #51
0
def _test_cfui_eap_power_reload(web_session):
    web_session.logger.info("Begin Server Reload")
    assert servers(web_session).eap_power_reload()
Example #52
0
def test_cfui_undeploy_application_archive(web_session):
    assert servers(web_session).undeploy_application_archive()
Example #53
0
def _test_cfui_eap_power_suspend(web_session):
    web_session.logger.info("Begin Server Suspend")
    assert servers(web_session).eap_power_suspend()
Example #54
0
def test_cfui_server_policy_edit_hawkular(web_session):
    web_session.logger.info("Begin Server Policy Edit")
    assert servers(web_session).server_policy_edit('provider')
Example #55
0
def test_cfui_start_application_archive(web_session):
    web_session.logger.info("Begin Start Application Archive (OPR-038)")
    assert servers(web_session).enable_application_archive()