Selenium és una eina potent per controlar els navegadors web mitjançant programes i realitzar l'automatització del navegador. És funcional per a tots els navegadors, funciona en tots els sistemes operatius principals i els seus scripts estan escrits en diversos idiomes, és a dir Python , Java , C# , etc., treballarem amb Python. El tutorial de Selenium cobreix tots els temes com ara: WebDriver, WebElement, proves unitàries amb seleni. Aquest tutorial de Python Selenium cobreix Selenium des dels usos bàsics fins a usos avançats i professionals. 
Per què aprendre Selenium Python?
- Codi obert i portàtil – Selenium és un marc de proves web de codi obert i portàtil.
- Combinació d'eina i DSL – Selenium és una combinació d'eines i DSL (Domain Specific Language) per dur a terme diferents tipus de proves.
- Més fàcil d'entendre i implementar – Les ordres de Selenium es classifiquen en diferents classes que fan que sigui més fàcil d'entendre i implementar.
- Menys càrrega i estrès per als provadors – Com s'ha esmentat anteriorment, la quantitat de temps necessària per fer proves d'escenaris de proves repetides a totes i cadascuna de les noves compilacions es redueix gairebé a zero. Per tant, la càrrega del provador es redueix.
- Reducció de costos per als clients empresarials – L'empresa ha de pagar el sou als provadors, que s'estalvia mitjançant l'eina de prova d'automatització. L'automatització no només estalvia temps, sinó que també obté beneficis en costos per al negoci.
L'aprenentatge de Selenium amb Python obre moltes possibilitats per a proves d'aplicacions web eficients i efectives, sobretot quan es combina amb plataformes de proves al núvol populars com LambdaTest.
LambdaTest és una plataforma d'execució i orquestració de proves impulsada per IA que permet als desenvolupadors i provadors realitzar proves de Selenium Python a escala en un laboratori de proves remot de més de 3000 navegadors i sistemes operatius d'escriptori reals. Amb Selenium Python, podeu escriure scripts de prova sòlids per automatitzar les proves d'aplicacions web, garantint la seva funcionalitat en diferents navegadors i plataformes. Els desenvolupadors i provadors fins i tot poden executar proves en paral·lel en múltiples combinacions, ajudant-los a enviar compilacions de qualitat a la velocitat de la llum.
Conceptes bàsics de seleni- Conceptes bàsics de seleni
- Components del seleni
- Aplicacions i usos
- Característiques
- Limitacions
Conceptes bàsics de Selenium Python
- Introducció i instal·lació de Selenium Python
- Navegació pels enllaços mitjançant el mètode get
- Interacció amb la pàgina web
- Localització d'elements individuals
- Localització de múltiples elements
- Estratègies de localització: Selenium Python
- Escriptura de proves amb Selenium Python
Estratègies de localització
entrada de l'usuari java
- Localització d'elements individuals -
- find_element_by_id()
- cerca_element_per_nom()
- find_element_by_xpath()
- find_element_by_link_text()
- find_element_by_partial_link_text()
- cerca_element_per_nom_etiqueta()
- cerca_element_per_nom_classe()
- find_element_by_css_selector()
- Localització de diversos elements -
- cerca_elements_per_nom()
- find_elements_by_xpath()
- find_elements_by_link_text()
- find_element_by_partial_link_text()
- find_elements_by_tag_name()
- cerca_elements_per_nom_classe()
- find_elements_by_css_selector()
Espera
- Esperes explícites
- Esperes implícites
millor cotxe del món
- Conceptes bàsics de les cadenes d'acció
- feu clic
- clic_i_prem
- context_clic
- feu doble clic
- arrossegar i deixar anar
- key_down
- key_up
- move_by_offset
- move_a_element
- move_a_element_amb_desplaçament
- alliberar
- reset_actions
- enviar_claus
Avançat en Selenium Python -
- Gestió d'excepcions: Selenium Python
- Tecles especials en Selenium Python
- Com gestionar les alertes a Selenium Python?
- Afegir i eliminar galetes a Selenium Python
- Com avançar i avançar a la història utilitzant Selenium Python?
- Tecles especials en Selenium Python
- Afirmació a Selenium WebDriver mitjançant TestNg
- Trucs de Selenium Python
- Model d'objectes de pàgina (POM)
Exemples de projectes
- Whatsapp utilitzant Python!
- Automatització del navegador utilitzant Selenium
- Inici de sessió a Facebook amb Python
- Automatització de la publicació de Happy Birthday a Facebook amb Selenium
- Com accedir a la finestra emergent d'inici de sessió a selenium mitjançant Python
- Bombarder SMS amb seleni
Selenium WebDriver
Selenium Webdriver és el pare de tots els mètodes i classes utilitzats a Selenium Python. És el motor de Selenium que ens permet realitzar diverses operacions sobre diversos elements d'una pàgina web. El controlador té diversos mètodes i atributs que es poden utilitzar per automatitzar les proves a Selenium Python. Per comprovar com utilitzar el controlador web, visiteu -
WebElement a Selenium Python
. Diversos mètodes que es poden utilitzar a selenium Python són:
| Mètode | Descripció |
|---|---|
| afegir_galetes | Afegeix una galeta a la sessió actual. |
| esquena | Fa un pas enrere en l'historial del navegador. |
| Tanca | Tanca la finestra actual. |
| crea_element_web | Crea un element web amb l'element_id especificat. |
| suprimir_totes_les_cookies | Elimina totes les galetes de l'àmbit de la sessió. |
| suprimir_cookie | Esborra una sola galeta amb el nom donat. |
| execute_async_script | Executa JavaScript de manera asíncrona a la finestra/marc actual. |
| execute_script | Executa JavaScript de manera sincrònica a la finestra/marc actual. |
| endavant | Fa un pas endavant en l'historial del navegador. |
| pantalla_completa | Invoca l'operació de 'pantalla completa' específica del gestor de finestres |
| get_cookie | Obteniu una sola galeta pel nom. Retorna la galeta si es troba, cap si no. |
| get_cookies | Retorna un conjunt de diccionaris, corresponents a les galetes visibles a la sessió actual. |
| get_log | Obté el registre d'un tipus de registre determinat |
| get_screenshot_as_base64 | Obté la captura de pantalla de la finestra actual com a cadena codificada en base64 que és útil en imatges incrustades en HTML. |
| get_screenshot_as_file | Desa una captura de pantalla de la finestra actual en un fitxer d'imatge PNG. |
| get_screenshot_as_png | Obté la captura de pantalla de la finestra actual com a dades binàries. |
| get_window_position | Obté la posició x, y de la finestra actual. |
| get_window_rect | Obté les coordenades x, y de la finestra, així com l'alçada i l'amplada de la finestra actual. |
| get_window_size | Obté l'amplada i l'alçada de la finestra actual. |
| implícitament_esperar | Estableix un temps d'espera enganxós per esperar implícitament que es trobi un element, |
| maximitzar_finestra | Maximitza la finestra actual que utilitza el controlador web |
| minimize_window | Invoca l'operació de 'minimització' específica del gestor de finestres |
| sortir | Tanca el controlador i tanca totes les finestres associades. |
| actualització | Actualitza la pàgina actual. |
| set_page_load_timeout | Estableix la quantitat de temps d'espera que finalitzi la càrrega de la pàgina abans de llançar un error. |
| set_script_timeout | Estableix la quantitat de temps que l'script ha d'esperar durant una trucada execute_async_script abans de llançar un error. |
| set_window_position | Estableix la posició x, y de la finestra actual. (window.moveTo) |
| set_window_rect | Estableix les coordenades x, y de la finestra, així com l'alçada i l'amplada de la finestra actual. |
| URL_actual | Obté l'URL de la pàgina actual. |
| maneta_de_finestra_actual | Retorna el controlador de la finestra actual. |
| font_pàgina | Obté l'origen de la pàgina actual. |
| títol | Retorna el títol de la pàgina actual. |
Selenium WebElement
Un element pot ser una etiqueta, propietat o qualsevol cosa, és una instància de classe
selenium.webdriver.remote.webelement.WebElement
. Després de trobar un element a la pantalla amb seleni, potser voldreu fer-hi clic o trobar subelements, etc. Selenium proporciona mètodes al voltant d'aquest WebElement de Selenium. Per comprovar com utilitzar l'objecte d'element a seleni, visiteu -
primer cerca de profunditat de l'algorisme
. A continuació es comenten diversos mètodes que es poden utilitzar amb un element a Selenium Python:
| Mètodes d'elements | Descripció |
|---|---|
| està_seleccionat() | El mètode is_selected s'utilitza per comprovar si l'element està seleccionat o no. Retorna un valor booleà Vertader o Fals. |
| es_visualitza() | El mètode is_displayed s'utilitza per comprovar si l'element és visible per a l'usuari o no. Retorna un valor booleà Vertader o Fals. |
| està_habilitat() | El mètode is_enabled s'utilitza per comprovar si l'element està habilitat o no. Retorna un valor booleà Vertader o Fals. |
| obtenir_propietat() | El mètode get_property s'utilitza per obtenir propietats d'un element, com ara obtenir la propietat text_length de l'etiqueta d'ancoratge. |
| obtenir_atribut() | El mètode get_attribute s'utilitza per obtenir atributs d'un element, com ara obtenir l'atribut href de l'etiqueta d'ancoratge. |
| enviar_claus() | El mètode send_keys s'utilitza per enviar text a qualsevol camp, com ara el camp d'entrada d'un formulari o fins i tot per ancorar un paràgraf d'etiquetes, etc. |
| clic () | El mètode de clic s'utilitza per fer clic a qualsevol element, com ara una etiqueta d'ancoratge, un enllaç, etc. |
| clar () | El mètode clear s'utilitza per esborrar el text de qualsevol camp, com ara el camp d'entrada d'un formulari o fins i tot per ancorar un paràgraf d'etiquetes, etc. |
| captura de pantalla () | El mètode de captura de pantalla s'utilitza per desar una captura de pantalla de l'element actual en un fitxer PNG. |
| Presentar() | El mètode d'enviament s'utilitza per enviar un formulari després d'haver enviat dades a un formulari. |
| value_of_css_property() | El mètode value_of_css_property s'utilitza per obtenir el valor d'una propietat css per a un element. |
| ubicació | El mètode d'ubicació s'utilitza per obtenir la ubicació de l'element al llenç que es pot renderitzable. |
| captura de pantalla_com_png | El mètode screenshot_as_png s'utilitza per obtenir la captura de pantalla de l'element actual com a dades binàries. |
| pare | El mètode pare s'utilitza per obtenir una referència interna a la instància WebDriver des d'on s'ha trobat aquest element. |
| mida | El mètode de mida s'utilitza per obtenir la mida de l'element actual. |
| nom_etiqueta | El mètode tag_name s'utilitza per obtenir el nom de l'etiqueta a la qual us referiu. |
| text | El mètode text s'utilitza per obtenir el text de l'element actual. |
| rect | El mètode rect s'utilitza per obtenir un diccionari amb la mida i la ubicació de l'element. |
| captura de pantalla_com a_base64 | El mètode screenshot_as_base64 s'utilitza per obtenir la captura de pantalla de l'element actual com a cadena codificada en base64. |