remote chrome python selenium-webdriver pyunit

chrome - selenium webdriver python



¿Cómo puedo verificar si una casilla de verificación está marcada en Selenium Python Webdriver? (4)

Estoy buscando una semana cómo comprobar si una casilla de verificación está marcada en Selenium webdriver con Python, pero solo encuentro algoritmos de JAVA. Leí los documentos del webdriver y no tengo una respuesta para eso. ¿Alguien tiene una solución?


Encuentro otra manera que funciona, pero usa javascript adentro.

def is_checked(self, driver, item): checked = driver.execute_script(("return document.getElementById(''%s'').checked") % item) return checked


Estoy usando driver.find_element_by_name("< check_box_name >").is_selected()


Hay una propiedad WebElement llamada is_selected() , y para una casilla de verificación indica si está marcada o no. Por lo tanto, puede verificar si está marcada / desmarcada haciendo algo como esto:

driver.find_element_by_name(''<check_box_name>'').is_selected()

o

driver.find_element_by_id(''<check_box_id>'').is_selected()

Recuerdo tener el mismo problema al no poder encontrar la documentación. Es más fácil de encontrar una vez que conoces el nombre ( here hay algunos documentos, is_selected está hacia abajo), pero la forma en que he tratado de encontrar diferentes opciones / propiedades para los objetos de Selenium es simplemente soltar dir(some_object) en el código y vea qué opciones surgen (así es como apareció is_selected ).


def assert_checkbox_status (id, expect): global browser field = browser.find_element_by_id(id) assert field.get_attribute (''checked'')== expect

Ejemplo de uso:

assert_checkbox(''activate'', True) ==> assert if checkbox is checked assert_checkbox(''activate'', None) ==> assert if checkbox is unchecked