def test_delete_addressbook_in_mh():
    browser = SeElements(webdriver.Firefox())
    #with se as browser:
    # open url
    browser.navigate('https://bulk.boomware.com/login')
    # login
    browser.find('email').write('*****@*****.**')
    browser.find('password').write('123456Test')
    browser.find('button').click()
    # enter token
    browser.find('code').write('978896')
    browser.find('button').click()
    pass
Example #2
0
class GoogleDriveUi:
    def __init__(self, driver):
        self.driver = driver
        self.se = SeElements(browser=self.driver)

    def open_home_page(self):
        self.driver.get('https://www.google.com/drive/')

    def click_go_to_google_drive_button(self):
        self.se.xpath('//a[@data-g-action="Intro"]', wait=True, ttl=5).click()

    def login(self, email, password):
        self.open_home_page()
        self.click_go_to_google_drive_button()
        self.se.find('#identifierId', wait=True, ttl=5).clear().write(email)
        self.se.find('#identifierNext', wait=True, ttl=5).click()
        self.se.find('[type="password"]', wait=True,
                     ttl=5).clear().write(password)
        self.se.find('#passwordNext', wait=True, ttl=5).click()

    def double_click_on_file_or_folder(self, data_id):
        actionChains = ActionChains(self.driver)
        actionChains.double_click(
            self.driver.find_element_by_xpath(
                '//div[@data-id="{}"]'.format(data_id))).perform()

    def find_file_or_folder(self, data_id):
        return self.se.xpath('//div[@data-id="{}"]'.format(data_id),
                             wait=True,
                             ttl=5)
Example #3
0
class Facebook:
    def __init__(self, driver):
        self.driver = driver
        self.se = SeElements(browser=self.driver)

    def open_home_page(self):
        self.driver.get("https://www.facebook.com")

    def login(self, email, password):
        self.se.find('#email', wait=True, ttl=5).clear().write(email)
        self.se.find('#pass', wait=True, ttl=5).clear().write(password)
        self.se.find('#loginbutton', wait=True, ttl=5).click()

    def open_profile(self):
        self.se.xpath('//a[@title="Profile" or @title="Профиль"]',
                      wait=True,
                      ttl=5).click()

    def open_friends_page(self):
        self.se.xpath('//a[text()="Friends" or text()="Друзья"]',
                      wait=True,
                      ttl=5).click()

    def get_number_of_friends_badge(self):
        return self.se.xpath(
            '//a[@name="All friends" or @name="Все друзья"]/span[2]',
            wait=True,
            ttl=5).text()

    def scroll_down(self):
        movies_block = self.se.find('#pagelet_timeline_medley_movies')
        count = 50
        while not len(movies_block):
            if count == 0:
                break
            else:
                self.driver.execute_script(
                    'window.scrollTo(0, document.body.scrollHeight);')
                count -= 1

    def count_friends(self):
        friends = self.se.xpath('//div[@data-testid="friend_list_item"]',
                                wait=True,
                                ttl=10)
        return len(friends)
Example #4
0
NOTE:
    1) If Google ever changes their main page, this example will break.
    2) This assumes that you have Firefox installed on your machine
    3) This was tested on an OS X 10.10 machine running Firefox. YMMV.

To run:

    pip install -U selenium
    python simple.py
"""

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

from elementium.drivers.se import SeElements

# Create an Elements object that wraps the Selenium Firefox driver
elements = SeElements(webdriver.Firefox())

# Navigate to the Google search page
elements.navigate("http://www.google.com")

# Find the search box
search_box = elements.find('#lst-ib')[0]

# Enter something into the field to so that we can search for it
search_box.write("github elementium").write(Keys.RETURN)

# Quite the browser
elements.browser.quit()
    collector = []
    for i in range(len(cases)):
        case = cases[i]

        if (checkValuesOnLength(case) == 0):
            lineReport = {'CaseResult': 'SKIPPED', 'CaseLine': i + 2,
                          'Exp/Act': f'One or more values have length more than 10 symbols. {case[0]}/{case[1]}/{case[2]}', 'Timestamp': datetime.today().strftime("%Y-%m-%d %H.%M.%S")}
            collector.append(lineReport)
            writeToFileTR(collector)
            print(
                f'\033[93mSKIPPED\033[0m\tCaseLine {i + 2}. One or more values have length more than 10 symbols. {case[0]}/{case[1]}/{case[2]}')
            continue

        try:
            # ищем поля ввода, ждем пока из не будет 3шт
            inputs = browser.find("input[type='text']").until(lambda e: len(e) == 3)
            # ищем сабмит
            btn = browser.find("button[class='gwt-Button']")
        finally:
            # вводим значения
            for j in range(3):
                inputs.get(j).write(case[j])
            # жмем сабмит
            btn.get(0).click()
            # очищаем поля
            for k in range(3):
                inputs.get(k).clear()

            try:
                resultContainer = browser.find("div[class='answerLabel']").until(lambda e: len(e) == 1)
                actualResult = resultContainer.get(0).text()