Beispiel #1
0
    def test_distribution_icon_disabled(self):
        rand = my_random_string(3)
        home_page = HomePage(self.webdriver, self.config)
        home_page.createProject('Test Proj' + rand, 'NA - United States')
        sleep(10)

        project_page = ProjectPage(self.webdriver, self.config)
        audience_page = AudiencePage(self.webdriver, self.config)
        project_page.add_audience_button().click()
        sleep(5)
        audience_page.audience_name_textbox().send_keys('Test Audience')
        audience_page.add_dataSource('Purchase Behavior')
        self.webdriver.find_element_by_xpath("//select[contains(@ng-model,'criteriaColumnSelector')]").click()
        self.webdriver.find_element_by_xpath("//option[text()='Category']").click()
        self.webdriver.find_element_by_xpath("//input[@placeholder='Begin typing to search...']").click()
        self.webdriver.find_element_by_xpath("//li[contains(text(),'AIR FRESHENERS')]").click()
        criteria_createButton = self.webdriver.find_element_by_xpath(
            "//button[contains(@ng-click,'$ctrl.criteriaApply()') and (@class='red-btn')]")
        self.webdriver.execute_script("arguments[0].click();", criteria_createButton)
        # audience_page.criteria_createButton().click()
        sleep(5)
        audience_page.save_and_create_button().click()
        sleep(10)
        project_page.AudienceName('Test Audience').click()
        distribution_icon = project_page.audience_share_icon('Test Audience')
        if distribution_icon.is_enabled():
            print("Distribution Icon is disabled")
        else:
            print("Distribution Icon is not disabled")

        project_page.project_menu_icon('Test Proj' + rand).click()
        project_page.project_delete_icon('Test Proj' + rand).click()
        project_page.AlertOkButton().click()
Beispiel #2
0
    def test_consumer_journey(self):
        # project_name = self.configAB["Conceptual"]["project_name"]

        home_page = HomePage(self.webdriver, self.config)
        home_page.searchProjects('Argentina 07-08')
        project_page = ProjectPage(self.webdriver, self.config)
        aud_list = self.webdriver.find_elements_by_xpath(
            "//div[contains(@class ,'audience-title')]")

        for aud in aud_list:
            audience_name = str(aud.text)
            try:
                project_page.audience_menu_icon(audience_name).click()
                project_page.audience_share_icon(audience_name).click()
                project_page.ConsumerJourney(audience_name)
            except Exception as e:
                print(audience_name, e)
Beispiel #3
0
    def test_tradedesk_rate_card(self):
        section = self.__class__.__name__
        project_name = self.configAB["cpm_rate"]["project_name"]
        audience_name = self.configAB["cpm_rate"]["audience_name"]
        #Click on Tradedesk
        home_page = HomePage(self.webdriver, self.config)
        home_page.searchProjects(project_name)

        project_page = ProjectPage(self.webdriver, self.config)
        project_page.audience_menu_icon(audience_name).click()
        project_page.audience_share_icon(audience_name).click()
        self.webdriver.find_element_by_xpath(
            "//*[text()='" + audience_name +
            "']//following::div[contains(@class ,distribute-dd-menu)]/div[contains(text(),'Trade Desk')]"
        ).click()

        rate = WebDriverWait(self.webdriver, 50).until(
            EC.visibility_of_element_located(
                (By.XPATH,
                 "//table[@class='rate-card-table']/tbody/tr/th/span"))).text
        self.assertEqual(rate, "$1.05", "Trade desk Ratecard Incorrect")
    def test_distribution_disable_feature(self):
        section = self.__class__.__name__
        project_name = self.configAB[section]["project_name"]
        audience_name = self.configAB[section]["audience_name"]

        home_page = HomePage(self.webdriver, self.config)
        home_page.searchProjects(project_name)

        project_page = ProjectPage(self.webdriver, self.config)
        project_page.audience_menu_icon(audience_name).click()
        project_page.audience_share_icon(audience_name).click()
        ele = self.webdriver.find_element_by_xpath(
            "//*[text()='" + audience_name +
            "']//following::div[contains(@class ,distribute-dd-menu)]/div[contains(text(),'Consumer Journey')]"
        )
        text = ele.get_attribute('class')
        print(text)

        CI_text = self.webdriver.find_element_by_xpath(
            "//*[text()='" + audience_name +
            "']//following::div[contains(@class ,distribute-dd-menu)]/div[contains(text(),'Content Inspiration')]"
        ).get_attribute('class')
        print(CI_text)
Beispiel #5
0
    def test_content_inspiration(self):
        project_name = self.configAB["Conceptual"]["project_name"]

        home_page = HomePage(self.webdriver, self.config)
        home_page.searchProjects(project_name)
        project_page = ProjectPage(self.webdriver, self.config)
        aud_list = self.webdriver.find_elements_by_xpath(
            "//div[contains(@class ,'audience-title')]")

        for aud in aud_list:
            audience_name = str(aud.text)
            try:
                project_page.audience_menu_icon(audience_name).click()
                project_page.audience_share_icon(audience_name).click()
                project_page.ContentInspiration(audience_name)
            except Exception as e:
                print(audience_name, e)

        aud_name = []
        individual_count = []
        aud_list = self.webdriver.find_elements_by_xpath(
            "//div[contains(@class ,'audience-title')]")
        for aud in aud_list:
            name = str(aud.text)
            aud_name.append(name)

        aud_list = self.webdriver.find_elements_by_xpath(
            "//div[contains(@class ,'audience-title')]/following::div[@class='audience-info-item'][1]/div"
        )
        for aud in aud_list:
            count = str(aud.text)
            individual_count.append(count)

        df = pd.DataFrame()
        df['aud_names'] = aud_name
        df['individual_count'] = individual_count
        print(df)
    def test_distribution_icon_disabled(self):
        section = self.__class__.__name__
        project_name = self.configAB[section]["project_name"]
        audience_name = self.configAB[section]["audience_name"]

        home_page = HomePage(self.webdriver, self.config)
        project_page = ProjectPage(self.webdriver, self.config)

        home_page.searchProjects(project_name)
        project_page.AudienceName(audience_name).click()
        distribution_icon = project_page.audience_share_icon(audience_name)
        if distribution_icon.is_enabled():
            print("Distribution Icon is disabled")
        else:
            print("Distribution Icon is not disabled")
Beispiel #7
0
    def test_verify_activation_rate_and_CPM_value(self):
        section = self.__class__.__name__
        project_name = self.configAB["cpm_rate"]["project_name"]
        audience_name = self.configAB["cpm_rate"]["audience_name"]

        home_page = HomePage(self.webdriver, self.config)
        project_page = ProjectPage(self.webdriver, self.config)
        audience_page = AudiencePage(self.webdriver, self.config)

        home_page.searchProjects(project_name)

        project_page.audience_menu_icon(audience_name).click()
        project_page.audience_share_icon(audience_name).click()
        self.webdriver.find_element_by_xpath(
            "//*[text()='" + audience_name +
            "']//following::div[contains(@class ,distribute-dd-menu)]/div[contains(text(),'Trade Desk')]"
        ).click()
        CPM_rate = WebDriverWait(self.webdriver, 50).until(
            EC.visibility_of_element_located(
                (By.XPATH,
                 "//table[@class='rate-card-table']/tbody/tr/th/span"))).text
        print(CPM_rate)
        self.webdriver.find_element_by_xpath(
            "//button[contains(@ng-click,'btn.onClick()')]//following::span[text()='Cancel']"
        ).click()

        project_page.audience_menu_icon(audience_name).click()
        project_page.audienceEditIcon(audience_name)
        activation_rate = WebDriverWait(self.webdriver, 50).until(
            EC.visibility_of_element_located(
                (By.XPATH, "//span[contains(@class,'cost')]"))).text
        print(activation_rate)

        self.assertEqual(activation_rate, CPM_rate,
                         'Activation rate & CPM rate is not same')
        audience_page.aud_back_arrow().click()