Selenium WebDriver in Java

download Selenium WebDriver in Java

of 45

Transcript of Selenium WebDriver in Java

  • 7/25/2019 Selenium WebDriver in Java

    1/45

    Java

    Selenium

    WebdriverUF5 - Programaci

    Xavier Sala Pujolar

    Institut Cendrassos

  • 7/25/2019 Selenium WebDriver in Java

    2/45

  • 7/25/2019 Selenium WebDriver in Java

    3/45

    Selenium s

    grup deine

    automatitz

    de navegadSeleniumIDE Selenium

    2

  • 7/25/2019 Selenium WebDriver in Java

    4/45

    Mira el

    navegador...

    es mou sol!

    Automatitzaci?

  • 7/25/2019 Selenium WebDriver in Java

    5/45

    Es fan servir

    sobretot per

    proves de

    funcionament

    aplicacions w

  • 7/25/2019 Selenium WebDriver in Java

    6/45

    Selenium

    IDE

    Component

    de Firefoxper crear

    proves

    rpides

  • 7/25/2019 Selenium WebDriver in Java

    7/45

    Permet controlar navegadors

    des de llenguatges de

    programaci

    Selenium

    2

  • 7/25/2019 Selenium WebDriver in Java

    8/45

    Alguns

    navegadors

    necessiten u

    driver per

    funcionar

  • 7/25/2019 Selenium WebDriver in Java

    9/45

    Hi ha navegadors

    headless(no tenenentorn grfic)

  • 7/25/2019 Selenium WebDriver in Java

    10/45

    Combinat amb

    Selenium Server

    es poden controlaralhora diversos

    navegadors

  • 7/25/2019 Selenium WebDriver in Java

    11/45

    Moltes de les

    de test funci

    fan servir o p

    fer servir SeRobotframework

  • 7/25/2019 Selenium WebDriver in Java

    12/45

    Seleniudes de J

  • 7/25/2019 Selenium WebDriver in Java

    13/45

    La forma ms fcil

    dusar Selenium screar projectes

    amb Maveno

    Gradle

    Configuraci

    Maven

  • 7/25/2019 Selenium WebDriver in Java

    14/45

    Tamb es pot descarregar la

    llibreria i afegir-la al projecte

  • 7/25/2019 Selenium WebDriver in Java

    15/45

    Els programes

    comencen creant el

    Driver

    Obre una instnciadel navegador

  • 7/25/2019 Selenium WebDriver in Java

    16/45

    Pels navegadors

    que necessiten

    driver sha despecificar on s

    Cam

  • 7/25/2019 Selenium WebDriver in Java

    17/45

    Per tancar el navegador

    al acabar el programa

    navegador.close()

    navegador.quit()

    Noms tanca la finestra activa

    Tanca totes les finestres

  • 7/25/2019 Selenium WebDriver in Java

    18/45

    El mtode navigate()

    permet navegar

    .to(www.iescendrassos.refresh()

    .back()

    .forward()

  • 7/25/2019 Selenium WebDriver in Java

    19/45

    Obre el navegador i va awww.iescendrassos.net

  • 7/25/2019 Selenium WebDriver in Java

    20/45

    El mtode get()tamb

    permet navegar

    Bloqueja fins que la

    pgina es carrega

    No redirigeix, sinque fa un GET

  • 7/25/2019 Selenium WebDriver in Java

    21/45

    Amb manage(

    window()pod

    controlar laspde la finestra

    .maximize()

    .fullScreen()

    .setPosition(...)

  • 7/25/2019 Selenium WebDriver in Java

    22/45

    Es pot obtenir

    informacide la

    pgina activa

    getTitle()

    getPageSource()

    getCur

  • 7/25/2019 Selenium WebDriver in Java

    23/45

    Es poden

    captures d

    pantalla dpgina

  • 7/25/2019 Selenium WebDriver in Java

    24/45

    Es pot cercar unelemento

    diversos dins de la pgina

    We

    List

    WebElement

  • 7/25/2019 Selenium WebDriver in Java

    25/45

    By.className(classe)

    By.cssSelector(a)

    By.id(password)

    By.partialName(go)

    By.tagNam

    By.linkTex

    By.name(c

    By.xpath

    Hi ha diferents

    Locators

  • 7/25/2019 Selenium WebDriver in Java

    26/45

    NoSuchElementFoundEx

    findElement() qu

    falla genera una

    excepci

    No hi ha

    frens!

    findElements() retornuna llista buida

  • 7/25/2019 Selenium WebDriver in Java

    27/45

    Es pot treure informaci

    dels WebElements

    X

    Centre

    Centre

    http://iescen

    getText()

    getAttrib

    getCssVal

    isEnabledisDisplay

    isSelecte

    ...

    http://www.iescendrassos.net/
  • 7/25/2019 Selenium WebDriver in Java

    28/45

    Sels hi poden

    enviar comandes.sendKeys(Pe

    Pep

    .click()

    .submit()

  • 7/25/2019 Selenium WebDriver in Java

    29/45

    Es pot enviar

    qualsevol tecla

    als elements

    Les constants estandefinides a Keys

  • 7/25/2019 Selenium WebDriver in Java

    30/45

    Les tecles

    enviades poden

    ser les que

    vulguem ... Fem zoom out enviantCTRL + -

  • 7/25/2019 Selenium WebDriver in Java

    31/45

    Els DropBoxes poden fer

    servir a partir de lobjecte

    Select

    .selectByVisibleText(fr)

    .selectByValue(fr)

    .selectByInde

    Permet fer qualsevolcosa amb el control

  • 7/25/2019 Selenium WebDriver in Java

    32/45

    Es poden gestionar les cookies

    a travs de manager()

    addCookie()

    getCookie()

    getCookies()deleteCookieNamed

    deleteCookie()

    deleteAllCookies(

    ...

  • 7/25/2019 Selenium WebDriver in Java

    33/45

    finestra1

    fin

    Les comandes en Selenium

    noms van a la finestra

    activa

    A vegades les pgines webobren noves finestres

  • 7/25/2019 Selenium WebDriver in Java

    34/45

    finestra1

    fine

    Es poden obtenir

    els identificadors

    (handles) de lesfinestres obertes

  • 7/25/2019 Selenium WebDriver in Java

    35/45

    A partir del

    handlees pot

    canviar la

    finestra activafinestra1

    fine

  • 7/25/2019 Selenium WebDriver in Java

    36/45

    Es poden definir temps despera

    per evitar bloquejos

    implcits: carregar en 10

    Explcits

  • 7/25/2019 Selenium WebDriver in Java

    37/45

    Si les pgines

    renderitzena

    Javascript poque Selenium

    massa rpid

    Condici

    HA desperaral Javascript

  • 7/25/2019 Selenium WebDriver in Java

    38/45

    JavascriptExecutorpermet executar Javasc

    en una pgina

    Si la pgina usa JQUERYtamb es pot fer servir!

  • 7/25/2019 Selenium WebDriver in Java

    39/45

    Per tant es po

    servir JQuery

    seleccionarelements

  • 7/25/2019 Selenium WebDriver in Java

    40/45

    Es poden emetre

    events de teclat i

    de rata

    Advanced Us

    Interactions A

  • 7/25/2019 Selenium WebDriver in Java

    41/45

    Mou el cursora sobre laimatge Dob

  • 7/25/2019 Selenium WebDriver in Java

    42/45

    text

    DIV

  • 7/25/2019 Selenium WebDriver in Java

    43/45

  • 7/25/2019 Selenium WebDriver in Java

    44/45

    A les seves

    ordres

  • 7/25/2019 Selenium WebDriver in Java

    45/45