Beispiel #1
0
class Browse:
    def __init__(self, driver):
        self.driver = driver

    signin = By.CSS_SELECTOR("a.login")
    loginemail = By.ID("email")
    loginpassword = By.ID("passwd")
    loginsubmit = By.ID("SubmitLogin")
    menu = By.XPATH("//div[@id='block_top_menu']/ul/li/a")
    searchbar = By.ID("search_query_top")

    def login(self):
        return self.driver.find_element(*Browse.signin).click()

    def logemail(self):
        return self.driver.find_element(*Browse.loginemail).send_keys("*****@*****.**")

    def logpassword(self):
        return self.driver.find_element(*Browse.loginpassword).send_keys("Sindhu124")

    def logsubmit(self):
        return self.driver.find_element(*Browse.loginsubmit).click()

    def search(self):
        return self.driver.find_element(*Browse.searchbar).send_keys("printed")

    def searchenter(self):
        return self.driver.find_element(*Browse.searchbar).send_keys(Keys.ENTER)
class LoginPage(object):
    username_locator = By.ID("username")
    password_locator = By.ID("passwd")
    login_button_locator = By.ID("login")

    def __init__(self):
        self.driver = webdriver.Firefox(executable_path="H:\\Webdrivers\\geckodriver.exe")
 def bleConnect_long(self):
     #进入设备详情页
     self.enter_device()
     try:
         WebDriverWait(
             self.driver,
             60).until(lambda x: x.find_element_by_android_uiautomator(
                 'new UiSelector().text(\"已连接\")')).is_displayed()
     except:
         print('蓝牙首次未连接')
         self.loger.info('蓝牙首次未连接')
     else:
         print('蓝牙首次连接')
         self.loger.info('蓝牙首次连接')
         # 进入设置页
         btn_settting = self.driver.find_element_by_id("btn_setting")
         sleep(1)
         btn_settting.click()
         sleep(3)
         while True:
             try:
                 WebDriverWait(self.driver, 10, 0.5).until(
                     (By.ID('device_lock_switch'))).is_clickable()
             except:
                 print('蓝牙断开连接')
                 self.loger.info('蓝牙断开连接')
                 self.screenshot('蓝牙断开连接')
                 break
             else:
                 print('5s检测一次,蓝牙正常连接')
                 self.loger.info('5s检测一次,蓝牙正常连接')
                 sleep(5)
Beispiel #4
0
class Search:
    def __init__(self, driver):
        self.driver = driver

    searchbar = By.ID("search_query_top")
    searchbar.send_keys("printed")
    searchbar.send_keys(Keys.ENTER)
    print(
        By.XPATH(
            "//*[@id='center_column']/h1/span[@class='heading-counter']").text)
Beispiel #5
0
 def getLocator(self, locator):
     by = None
     key = locator.split(":")
     if len(key) == 1:
         by = By.ID(locator)
     elif len(key) == 2:
         key[0] = key[0].lower()
         key[1] = key[1].strip()
     if key[0] == "id":
         by = By.ID(key[1])
     if key[0] == "name":
         by = By.NAME(key[1])
     if key[0] == "xpath":
         by = By.XPATH(key[1])
     if key[0] == "linktext":
         by = By.LINK_TEXT(key[1])
     elif key[0] == "particallinktext":
         by = By.PARTIAL_LINK_TEXT(key[1])
     else:
         print("NO LOCATOR MATCHED")
     return by
Beispiel #6
0
def test_open_website():
    print("Start of open website")
    driver = webdriver.Firefox()
    wait.WebDriverWait(driver,5,2,None)
    # set implicit time to 30 seconds

    # driver.implicitlyWait(30)
    # navigate to the url
    driver.get("https://chercher.tech/python/windows-selenium-python")
    # get the Session id of the Parent
    parentGUID = driver.current_window_handle
    # click the button to open new window
    print(f'Printing Parent ID: {parentGUID}')
    driver.find_element(By.ID("two-window")).click()
    # driver.find_element_by_id("two-window").click()
    # time.sleep(5000)
    # get the All the session id of the browsers
    allGUID = driver.window_handles
    # pint the title of th epage
    # print("Page title before Switching : " + driver.title())
    # print("Total Windows : " + len(allGUID))
    # iterate the values in the set
    print(allGUID)
    for guid in allGUID:
        # one enter into if blobk if the GUID is not equal to parent window's GUID
        print(f'inside FOr loop')
        if guid != parentGUID:
            # switch to the guid
            # driver.switch_to_window(guid);
            print(guid)
            driver.switch_to(guid)
        else:
            print(f'Am out of IF and inside Else')
            driver.switch_to_window(guid.title())
        # break the loop
        break
    # search on the google page
    driver.find_element_by_name("q").send_keys("success")
    # print the title after switching
    print("Page title after Switching to goolge : " + driver.title())
    # time.sleep(5000);
    # close the browser
    driver.execute_script("window.scrollTo")
    driver.close()
    # switch back to the parent window
    # driver.switch_to_window(parentGUID);
    driver.switch_to(parentGUID)
    # print the title
    print("Page title after switching back to Parent: " + driver.title())
Beispiel #7
0
    def test_login(self, user_name, password, err_msg=''):
        '''This method takes 3 arguments, username, password and optional error message'''
        # clicks on the login option
        try:
            WebDriverWait(self.driver, config.driver_wait).until(
                ec.visibility_of(
                    self.driver.find_element_by_css_selector(self._sign_in)))
            ele_options = self.driver.find_elements_by_css_selector(
                self._sign_in)
            for ele in ele_options:
                option = ele.text
                if option == 'Sign in':
                    print('Sign-in option found and clicking it')
                    # it will click on the sign in option and hamburger menu will close
                    ele.click()
                    break
        except Exception as e:
            print('Sign-in option not found', e)

        # waits for the sign-in options/page to load
        WebDriverWait(self.driver, config.driver_wait).until(
            ec.presence_of_element_located(By.ID(self._ele_lgn)))
        ele_lgn = self.driver.find_element_by_id(self._ele_lgn)
        ele_pswd = self.driver.find_element_by_id(self._ele_pswd)
        ele_sbt = self.driver.find_element_by_id(self._ele_sbt)
        ele_lgn.clear()
        ele_lgn.send_keys(user_name)
        ele_pswd.clear()
        ele_pswd.send_keys(password)
        ele_sbt.submit()

        # user will land on dashboard upon successful login, soft assert to check browser title

        if self.driver.title == 'User Dashboard':  # assumed dashboard title
            print('Test pass')
        else:
            # wait for message to be visible to user
            WebDriverWait(self.driver, config.driver_wait).until(
                ec.visibility_of(
                    self.driver.find_element_by_css_selector(self._err_msg)))
            ele_login = self.driver.find_element_by_css_selector(self._err_msg)
            err_login = ele_login.text
            # comparing if the actual and expected messages are same
            if err_msg == err_login:
                print('Test pass')
            else:
                print('Test fail')
Beispiel #8
0
 def fluentWaitElementById(location):
     try:
         element = WebDriverWait(location.driver, 10).until(
             EC.presence_of_element_located((By.ID(location))))
     finally:
         location.driver.quit()
Beispiel #9
0
 def find_element_by_id(self, element):
     return self.driver.find_element(By.ID(element))
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

link = "http://suninjuly.github.io/wait1.html"
link2 = "http://suninjuly.github.io/wait2.html"
browser = webdriver.Chrome()
browser.get(link2)

#browser.implicitly_wait(5)

#browser.find_element_by_id("check").click()

button = WebDriverWait(browser,
                       5).until(EC.element_to_be_clickable((By.ID, "check")))

button.click()

button2 = WebDriverWait(browser, 12).until(
    EC.text_to_be_present_in_element(By.ID("123123"), "123123"))

message = browser.find_element_by_id("check_message").text

assert "успешно" in message
Beispiel #11
0
class Account:
    def __init__(self, driver):
        self.driver = driver

    signin = By.CSS_SELECTOR("a.login")
    account_email = By.ID("email_create")
    create_account = By.ID("SubmitCreate")
    first_name = By.ID("customer_firstname")
    last_name = By.ID("customer_lastname")
    password = By.ID("passwd")
    address = By.ID("address1")
    city = By.ID("city")
    zipcode = By.ID("postcode")
    states = By.XPATH("//*[@id='id_state']/option[5]")
    phone_number = By.ID("phone_mobile")
    address_alias = By.ID("alias")
    register = By.ID("submitAccount")

    def signing(self):
        return self.driver.find_element(*Account.signin).click()

    def sendemail(self):
        return self.driver.find_element(
            *Account.account_email).send_keys("*****@*****.**")

    def createaccount(self):
        return self.driver.find_element(*Account.create_account).click()

    def firstnamesend(self):
        return self.driver.find_element(
            *Account.first_name).send_keys("Sindhu")

    def lastnamesend(self):
        return self.driver.find_element(*Account.last_name).send_keys("Sh")

    def passwordsend(self):
        return self.driver.find_element(
            *Account.password).send_keys("Sindhu124")

    def addresssend(self):
        return self.driver.find_element(
            *Account.address).send_keys("2421 carlmont")

    def citysend(self):
        return self.driver.find_element(*Account.city).send_keys("Belmont")

    def statesend(self):
        return self.driver.find_element(*Account.states).click()

    def zipcodesend(self):
        return self.driver.find_element(*Account.zipcode).send_keys("94002")

    def phonesend(self):
        return self.driver.find_element(
            *Account.phone_number).send_keys("6504036567")

    def addressaliassend(self):
        return self.driver.find_element(
            *Account.address_alias).send_keys("Bangalore India")

    def registered(self):
        return self.driver.find_element(*Account.register).click()
class Locators:
    def __init__(self):
        super().__init__()

    locator1 = By.ID("asd")
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
from selenium.webdriver.common.by import By
driver = webdriver.Chrome(executable_path="D:\drivers\chromedriver.exe")

driver.get("https://www.expedia.com")

driver.implicitly_wait(10)

driver.find_element_by_xpath(
    "/html/body/meso-native-marquee/section/div/div/div[1]/section/div/div[2]/div[2]/section[2]/form/div[6]/div/div/div[1]/label/input"
).send_keys("chandigarh")
driver.find_element_by_xpath("/html/body").send_keys("04/24/2020")

driver.find_element(By.ID("hotel-checkout-hp-hotel")).send_keys("04/25/2020")
driver.find_element_by_xpath(
    "/html/body/meso-native-marquee/section/div/div/div[1]/section/div/div[2]/div[2]/section[2]/form/div[13]/label/button"
).click()
Beispiel #14
0
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.by import By
import time

driver = webdriver.Chrome(
    executable_path=
    "C:\\Users\\aahme\\Desktop\\webdriver_executables\\chromedriver.exe")

driver.get("")
element = driver.find_element(By.ID("element1"))

#Scroll by pixel amount
driver.execute_script("window.scrollBy(0,500)", "")
driver.execute_script("arguements[0].scrollIntoView();",
                      element)  # keep scrolling til element in view

#Scroll entire length of document
driver.execute_script("window.scrollBy(0,document.body.scrollHeight)")
                    if (paper_title.lower().replace(
                            ' ', '') in page_source.lower().replace(' ', '')
                            or paper_title2.lower().replace(' ', '')
                            in page_source.lower().replace(' ', '')):
                        paper_found = True
                        id_autor_xml = informacoes_autor.find_element_by_tag_name(
                            'li')
                        id_autor_xml = id_autor_xml.text[-16:]

                        if not (id_autor_xml + '.zip') in ids_downloaded:
                            print(base_url + '/download.do?idcnpq=' +
                                  id_autor_xml)
                            driver.get(base_url + '/download.do?idcnpq=' +
                                       id_autor_xml)
                            while driver.findElement(
                                    By.ID("btn_validar_captcha")):

                                imgBase64 = convertCaptchatoBase64(driver)

                                r = requests.post(
                                    'http://192.168.200.84:8080/CaptchaService/captcha',
                                    data=json.dumps({'imgBase64': imgBase64}))

                                r.encoding = "UTF-8"
                                jsonCaptcha = r.json()

                                driver.find_element_by_id('informado').clear()
                                driver.find_element_by_id(
                                    'informado').send_keys(
                                        jsonCaptcha['captcha'])
                                driver.find_element_by_id(