How to use click_visible_elements method in SeleniumBase

Best Python code snippet using SeleniumBase

master_dict.py

Source:master_dict.py Github

copy

Full Screen

1# Master Dictionary2# Translations3# 0: English4# 1: Chinese5# 2: Dutch6# 3: French7# 4: Italian8# 5: Japanese9# 6: Korean10# 7: Portuguese11# 8: Russian12# 9: Spanish13class MD_F:14 # Master Dictionary Functions15 def get_languages_list():16 languages = []17 languages.append("English")18 languages.append("Chinese")19 languages.append("Dutch")20 languages.append("French")21 languages.append("Italian")22 languages.append("Japanese")23 languages.append("Korean")24 languages.append("Portuguese")25 languages.append("Russian")26 languages.append("Spanish")27 return languages28 def get_parent_classes_list():29 parent_classes = []30 parent_classes.append("BaseCase")31 parent_classes.append("硒测试用例")32 parent_classes.append("Testgeval")33 parent_classes.append("CasDeBase")34 parent_classes.append("CasoDiProva")35 parent_classes.append("セレニウムテストケース")36 parent_classes.append("셀레늄_테스트_케이스")37 parent_classes.append("CasoDeTeste")38 parent_classes.append("ТестНаСелен")39 parent_classes.append("CasoDePrueba")40 return parent_classes41 def get_masterqa_parent_classes_list():42 parent_classes = []43 parent_classes.append("MasterQA")44 parent_classes.append("MasterQA_中文")45 parent_classes.append("MasterQA_Nederlands")46 parent_classes.append("MasterQA_Français")47 parent_classes.append("MasterQA_Italiano")48 parent_classes.append("MasterQA_日本語")49 parent_classes.append("MasterQA_한국어")50 parent_classes.append("MasterQA_Português")51 parent_classes.append("MasterQA_Русский")52 parent_classes.append("MasterQA_Español")53 return parent_classes54 def get_parent_class_lang(parent_class):55 parent_class_lang = {}56 parent_class_lang["BaseCase"] = "English"57 parent_class_lang["硒测试用例"] = "Chinese"58 parent_class_lang["Testgeval"] = "Dutch"59 parent_class_lang["CasDeBase"] = "French"60 parent_class_lang["CasoDiProva"] = "Italian"61 parent_class_lang["セレニウムテストケース"] = "Japanese"62 parent_class_lang["셀레늄_테스트_케이스"] = "Korean"63 parent_class_lang["CasoDeTeste"] = "Portuguese"64 parent_class_lang["ТестНаСелен"] = "Russian"65 parent_class_lang["CasoDePrueba"] = "Spanish"66 if parent_class not in parent_class_lang.keys():67 raise Exception("Invalid parent_class {%s} not in {%s}!"68 "" % (parent_class, parent_class_lang.keys()))69 return parent_class_lang[parent_class]70 def get_mqa_par_class_lang(parent_class):71 parent_class_lang = {}72 parent_class_lang["MasterQA"] = "English"73 parent_class_lang["MasterQA_中文"] = "Chinese"74 parent_class_lang["MasterQA_Nederlands"] = "Dutch"75 parent_class_lang["MasterQA_Français"] = "French"76 parent_class_lang["MasterQA_Italiano"] = "Italian"77 parent_class_lang["MasterQA_日本語"] = "Japanese"78 parent_class_lang["MasterQA_한국어"] = "Korean"79 parent_class_lang["MasterQA_Português"] = "Portuguese"80 parent_class_lang["MasterQA_Русский"] = "Russian"81 parent_class_lang["MasterQA_Español"] = "Spanish"82 if parent_class not in parent_class_lang.keys():83 raise Exception("Invalid parent_class {%s} not in {%s}!"84 "" % (parent_class, parent_class_lang.keys()))85 return parent_class_lang[parent_class]86 def get_lang_parent_class(language):87 lang_parent_class = {}88 lang_parent_class["English"] = "BaseCase"89 lang_parent_class["Chinese"] = "硒测试用例"90 lang_parent_class["Dutch"] = "Testgeval"91 lang_parent_class["French"] = "CasDeBase"92 lang_parent_class["Italian"] = "CasoDiProva"93 lang_parent_class["Japanese"] = "セレニウムテストケース"94 lang_parent_class["Korean"] = "셀레늄_테스트_케이스"95 lang_parent_class["Portuguese"] = "CasoDeTeste"96 lang_parent_class["Russian"] = "ТестНаСелен"97 lang_parent_class["Spanish"] = "CasoDePrueba"98 if language not in lang_parent_class.keys():99 raise Exception("Invalid language {%s} not in {%s}!"100 "" % (language, lang_parent_class.keys()))101 return lang_parent_class[language]102 def get_mqa_lang_par_class(language):103 lang_parent_class = {}104 lang_parent_class["English"] = "MasterQA"105 lang_parent_class["Chinese"] = "MasterQA_中文"106 lang_parent_class["Dutch"] = "MasterQA_Nederlands"107 lang_parent_class["French"] = "MasterQA_Français"108 lang_parent_class["Italian"] = "MasterQA_Italiano"109 lang_parent_class["Japanese"] = "MasterQA_日本語"110 lang_parent_class["Korean"] = "MasterQA_한국어"111 lang_parent_class["Portuguese"] = "MasterQA_Português"112 lang_parent_class["Russian"] = "MasterQA_Русский"113 lang_parent_class["Spanish"] = "MasterQA_Español"114 if language not in lang_parent_class.keys():115 raise Exception("Invalid language {%s} not in {%s}!"116 "" % (language, lang_parent_class.keys()))117 return lang_parent_class[language]118 def get_import_line(language):119 import_line = {}120 # - The Default Import Line:121 import_line["English"] = (122 "from seleniumbase import BaseCase")123 # - Translated Import Lines:124 import_line["Chinese"] = (125 "from seleniumbase.translate.chinese import 硒测试用例")126 import_line["Dutch"] = (127 "from seleniumbase.translate.dutch import Testgeval")128 import_line["French"] = (129 "from seleniumbase.translate.french import CasDeBase")130 import_line["Italian"] = (131 "from seleniumbase.translate.italian import CasoDiProva")132 import_line["Japanese"] = (133 "from seleniumbase.translate.japanese import セレニウムテストケース")134 import_line["Korean"] = (135 "from seleniumbase.translate.korean import 셀레늄_테스트_케이스")136 import_line["Portuguese"] = (137 "from seleniumbase.translate.portuguese import CasoDeTeste")138 import_line["Russian"] = (139 "from seleniumbase.translate.russian import ТестНаСелен")140 import_line["Spanish"] = (141 "from seleniumbase.translate.spanish import CasoDePrueba")142 if language not in import_line.keys():143 raise Exception("Invalid language {%s} not in {%s}!"144 "" % (language, import_line.keys()))145 return import_line[language]146 def get_mqa_im_line(language):147 import_line = {}148 # - The Default Import Line:149 import_line["English"] = (150 "from seleniumbase import MasterQA")151 # - Translated Import Lines:152 import_line["Chinese"] = (153 "from seleniumbase.translate.chinese import MasterQA_中文")154 import_line["Dutch"] = (155 "from seleniumbase.translate.dutch import MasterQA_Nederlands")156 import_line["French"] = (157 "from seleniumbase.translate.french import MasterQA_Français")158 import_line["Italian"] = (159 "from seleniumbase.translate.italian import MasterQA_Italiano")160 import_line["Japanese"] = (161 "from seleniumbase.translate.japanese import MasterQA_日本語")162 import_line["Korean"] = (163 "from seleniumbase.translate.korean import MasterQA_한국어")164 import_line["Portuguese"] = (165 "from seleniumbase.translate.portuguese import MasterQA_Português")166 import_line["Russian"] = (167 "from seleniumbase.translate.russian import MasterQA_Русский")168 import_line["Spanish"] = (169 "from seleniumbase.translate.spanish import MasterQA_Español")170 if language not in import_line.keys():171 raise Exception("Invalid language {%s} not in {%s}!"172 "" % (language, import_line.keys()))173 return import_line[language]174 def get_locale_code(language):175 locale_codes = {}176 locale_codes["English"] = "en"177 locale_codes["Chinese"] = "zh"178 locale_codes["Dutch"] = "nl"179 locale_codes["French"] = "fr"180 locale_codes["Italian"] = "it"181 locale_codes["Japanese"] = "ja"182 locale_codes["Korean"] = "ko"183 locale_codes["Portuguese"] = "pt"184 locale_codes["Russian"] = "ru"185 locale_codes["Spanish"] = "es"186 if language not in locale_codes.keys():187 raise Exception("Invalid language {%s} not in {%s}!"188 "" % (language, locale_codes.keys()))189 return locale_codes[language]190 def get_locale_list():191 locale_list = []192 locale_list.append("en")193 locale_list.append("zh")194 locale_list.append("nl")195 locale_list.append("fr")196 locale_list.append("it")197 locale_list.append("ja")198 locale_list.append("ko")199 locale_list.append("pt")200 locale_list.append("ru")201 locale_list.append("es")202 return locale_list203class MD_L_Codes:204 # Master Dictionary Language Codes205 lang = {}206 lang["English"] = 0207 lang["Chinese"] = 1208 lang["Dutch"] = 2209 lang["French"] = 3210 lang["Italian"] = 4211 lang["Japanese"] = 5212 lang["Korean"] = 6213 lang["Portuguese"] = 7214 lang["Russian"] = 8215 lang["Spanish"] = 9216class MD:217 # Master Dictionary218 md = {}219 num_langs = len(MD_L_Codes.lang)220 md["open"] = ["*"] * num_langs221 md["open"][0] = "open"222 md["open"][1] = "开启网址"223 md["open"][2] = "url_openen"224 md["open"][3] = "ouvrir_url"225 md["open"][4] = "apri_url"226 md["open"][5] = "URLを開く"227 md["open"][6] = "URL_열기"228 md["open"][7] = "abrir_url"229 md["open"][8] = "открыть"230 md["open"][9] = "abrir_url"231 md["click"] = ["*"] * num_langs232 md["click"][0] = "click"233 md["click"][1] = "单击"234 md["click"][2] = "klik"235 md["click"][3] = "cliquez_sur"236 md["click"][4] = "fare_clic"237 md["click"][5] = "クリックして"238 md["click"][6] = "클릭"239 md["click"][7] = "clique"240 md["click"][8] = "нажмите"241 md["click"][9] = "haga_clic"242 md["update_text"] = ["*"] * num_langs243 md["update_text"][0] = "update_text"244 md["update_text"][1] = "更新文本"245 md["update_text"][2] = "tekst_bijwerken"246 md["update_text"][3] = "modifier_le_texte"247 md["update_text"][4] = "aggiornare_il_testo"248 md["update_text"][5] = "テキストを更新"249 md["update_text"][6] = "텍스트를_업데이트"250 md["update_text"][7] = "atualizar_texto"251 md["update_text"][8] = "обновить_текст"252 md["update_text"][9] = "actualizar_texto"253 md["assert_element"] = ["*"] * num_langs254 md["assert_element"][0] = "assert_element"255 md["assert_element"][1] = "断言元素"256 md["assert_element"][2] = "controleren_element"257 md["assert_element"][3] = "vérifier_un_élément"258 md["assert_element"][4] = "verificare_elemento"259 md["assert_element"][5] = "要素を確認する"260 md["assert_element"][6] = "요소_확인"261 md["assert_element"][7] = "verificar_elemento"262 md["assert_element"][8] = "подтвердить_элемент"263 md["assert_element"][9] = "verificar_elemento"264 md["assert_text"] = ["*"] * num_langs265 md["assert_text"][0] = "assert_text"266 md["assert_text"][1] = "断言文本"267 md["assert_text"][2] = "controleren_tekst"268 md["assert_text"][3] = "vérifier_le_texte"269 md["assert_text"][4] = "verificare_il_testo"270 md["assert_text"][5] = "テキストを確認する"271 md["assert_text"][6] = "텍스트_확인"272 md["assert_text"][7] = "verificar_texto"273 md["assert_text"][8] = "подтвердить_текст"274 md["assert_text"][9] = "verificar_texto"275 md["assert_exact_text"] = ["*"] * num_langs276 md["assert_exact_text"][0] = "assert_exact_text"277 md["assert_exact_text"][1] = "确切断言文本"278 md["assert_exact_text"][2] = "controleren_exacte_tekst"279 md["assert_exact_text"][3] = "vérifier_exactement_le_texte"280 md["assert_exact_text"][4] = "verificare_il_testo_esatto"281 md["assert_exact_text"][5] = "正確なテキストを確認する"282 md["assert_exact_text"][6] = "정확한_텍스트를_확인하는"283 md["assert_exact_text"][7] = "verificar_texto_exato"284 md["assert_exact_text"][8] = "подтвердить_текст_точно"285 md["assert_exact_text"][9] = "verificar_texto_exacto"286 md["get_text"] = ["*"] * num_langs287 md["get_text"][0] = "get_text"288 md["get_text"][1] = "获取文本"289 md["get_text"][2] = "ontvang_tekst"290 md["get_text"][3] = "obtenir_du_texte"291 md["get_text"][4] = "ottenere_il_testo"292 md["get_text"][5] = "テキストを取得"293 md["get_text"][6] = "텍스트를_검색"294 md["get_text"][7] = "obter_texto"295 md["get_text"][8] = "получить_текст"296 md["get_text"][9] = "obtener_texto"297 md["click_link_text"] = ["*"] * num_langs298 md["click_link_text"][0] = "click_link_text"299 md["click_link_text"][1] = "单击链接文本"300 md["click_link_text"][2] = "klik_linktekst"301 md["click_link_text"][3] = "cliquez_sur_le_texte_du_lien"302 md["click_link_text"][4] = "fare_clic_sul_testo_del_collegamento"303 md["click_link_text"][5] = "リンクテキストをクリックします"304 md["click_link_text"][6] = "링크_텍스트를_클릭합니다"305 md["click_link_text"][7] = "clique_no_texto_do_link"306 md["click_link_text"][8] = "нажмите_на_ссылку"307 md["click_link_text"][9] = "haga_clic_en_el_texto_del_enlace"308 md["assert_link_text"] = ["*"] * num_langs309 md["assert_link_text"][0] = "assert_link_text"310 md["assert_link_text"][1] = "断言链接文本"311 md["assert_link_text"][2] = "controleren_linktekst"312 md["assert_link_text"][3] = "vérifier_le_texte_du_lien"313 md["assert_link_text"][4] = "verificare_testo_del_collegamento"314 md["assert_link_text"][5] = "リンクテキストを確認する"315 md["assert_link_text"][6] = "링크_텍스트_확인"316 md["assert_link_text"][7] = "verificar_texto_do_link"317 md["assert_link_text"][8] = "подтвердить_ссылку"318 md["assert_link_text"][9] = "verificar_texto_del_enlace"319 md["assert_title"] = ["*"] * num_langs320 md["assert_title"][0] = "assert_title"321 md["assert_title"][1] = "断言标题"322 md["assert_title"][2] = "controleren_titel"323 md["assert_title"][3] = "vérifier_le_titre"324 md["assert_title"][4] = "verificare_il_titolo"325 md["assert_title"][5] = "タイトルを確認"326 md["assert_title"][6] = "제목_확인"327 md["assert_title"][7] = "verificar_título"328 md["assert_title"][8] = "подтвердить_название"329 md["assert_title"][9] = "verificar_título"330 md["assert_true"] = ["*"] * num_langs331 md["assert_true"][0] = "assert_true"332 md["assert_true"][1] = "断言为真"333 md["assert_true"][2] = "controleren_ware"334 md["assert_true"][3] = "vérifier_la_vérité"335 md["assert_true"][4] = "verificare_correttezza"336 md["assert_true"][5] = "検証が正しい"337 md["assert_true"][6] = "올바른지_확인"338 md["assert_true"][7] = "verificar_verdade"339 md["assert_true"][8] = "подтвердить_правду"340 md["assert_true"][9] = "verificar_verdad"341 md["assert_false"] = ["*"] * num_langs342 md["assert_false"][0] = "assert_false"343 md["assert_false"][1] = "断言为假"344 md["assert_false"][2] = "controleren_valse"345 md["assert_false"][3] = "vérifier_le_mensonge"346 md["assert_false"][4] = "verificare_falso"347 md["assert_false"][5] = "検証は偽です"348 md["assert_false"][6] = "거짓인지_확인"349 md["assert_false"][7] = "verificar_falso"350 md["assert_false"][8] = "подтвердить_ложные"351 md["assert_false"][9] = "verificar_falso"352 md["go_back"] = ["*"] * num_langs353 md["go_back"][0] = "go_back"354 md["go_back"][1] = "回去"355 md["go_back"][2] = "terug"356 md["go_back"][3] = "retour"357 md["go_back"][4] = "indietro"358 md["go_back"][5] = "戻る"359 md["go_back"][6] = "뒤로"360 md["go_back"][7] = "voltar"361 md["go_back"][8] = "назад"362 md["go_back"][9] = "volver"363 md["select_option_by_text"] = ["*"] * num_langs364 md["select_option_by_text"][0] = "select_option_by_text"365 md["select_option_by_text"][1] = "按文本选择选项"366 md["select_option_by_text"][2] = "optie_selecteren_per_tekst"367 md["select_option_by_text"][3] = "sélectionner_option_par_texte"368 md["select_option_by_text"][4] = "selezionare_opzione_per_testo"369 md["select_option_by_text"][5] = "テキストでオプションを選択"370 md["select_option_by_text"][6] = "텍스트로_옵션_선택"371 md["select_option_by_text"][7] = "selecionar_opção_por_texto"372 md["select_option_by_text"][8] = "выбрать_опцию_по_тексту"373 md["select_option_by_text"][9] = "seleccionar_opción_por_texto"374 md["click_visible_elements"] = ["*"] * num_langs375 md["click_visible_elements"][0] = "click_visible_elements"376 md["click_visible_elements"][1] = "单击可见元素"377 md["click_visible_elements"][2] = "klik_zichtbare_elementen"378 md["click_visible_elements"][3] = "cliquez_éléments_visibles"379 md["click_visible_elements"][4] = "fare_clic_sugli_elementi_visibili"380 md["click_visible_elements"][5] = "表示要素をクリックします"381 md["click_visible_elements"][6] = "페이지_요소를_클릭_합니다"382 md["click_visible_elements"][7] = "clique_nos_elementos_visíveis"383 md["click_visible_elements"][8] = "нажмите_видимые_элементы"384 md["click_visible_elements"][9] = "haga_clic_en_elementos_visibles"385 md["hover_and_click"] = ["*"] * num_langs386 md["hover_and_click"][0] = "hover_and_click"387 md["hover_and_click"][1] = "悬停并单击"388 md["hover_and_click"][2] = "zweven_en_klik"389 md["hover_and_click"][3] = "planer_au_dessus_et_cliquez"390 md["hover_and_click"][4] = "passa_il_mouse_sopra_e_fai_clic"391 md["hover_and_click"][5] = "上にマウスを移動しクリック"392 md["hover_and_click"][6] = "위로_마우스를_이동하고_클릭"393 md["hover_and_click"][7] = "passe_o_mouse_e_clique"394 md["hover_and_click"][8] = "наведите_и_нажмите"395 md["hover_and_click"][9] = "pasar_el_ratón_y_hacer_clic"396 md["switch_to_frame"] = ["*"] * num_langs397 md["switch_to_frame"][0] = "switch_to_frame"398 md["switch_to_frame"][1] = "切换到帧"399 md["switch_to_frame"][2] = "overschakelen_naar_frame"400 md["switch_to_frame"][3] = "passer_au_cadre"401 md["switch_to_frame"][4] = "passa_al_frame"402 md["switch_to_frame"][5] = "フレームに切り替え"403 md["switch_to_frame"][6] = "프레임으로_전환"404 md["switch_to_frame"][7] = "mudar_para_o_quadro"405 md["switch_to_frame"][8] = "переключиться_на_кадр"406 md["switch_to_frame"][9] = "cambiar_al_marco"407 md["switch_to_default_content"] = ["*"] * num_langs408 md["switch_to_default_content"][0] = "switch_to_default_content"409 md["switch_to_default_content"][1] = "切换到默认内容"410 md["switch_to_default_content"][2] = "overschakelen_naar_standaardcontent"411 md["switch_to_default_content"][3] = "passer_au_contenu_par_défaut"412 md["switch_to_default_content"][4] = "passa_al_contenuto_predefinito"413 md["switch_to_default_content"][5] = "デフォルトのコンテンツに切り替える"414 md["switch_to_default_content"][6] = "기본_콘텐츠로_전환"415 md["switch_to_default_content"][7] = "volte_para_o_conteúdo_padrão"416 md["switch_to_default_content"][8] = (417 "переключиться_на_содержимое_по_умолчанию")418 md["switch_to_default_content"][9] = "cambiar_al_contenido_predeterminado"419 # MasterQA Only!420 md["verify"] = ["*"] * num_langs421 md["verify"][0] = "verify"422 md["verify"][1] = "校验"423 md["verify"][2] = "controleren"424 md["verify"][3] = "vérifier"425 md["verify"][4] = "verificare"426 md["verify"][5] = "を確認する"427 md["verify"][6] = "확인"428 md["verify"][7] = "verificar"429 md["verify"][8] = "подтвердить"...

Full Screen

Full Screen

gdrivecontroller.py

Source:gdrivecontroller.py Github

copy

Full Screen

...61 # For now only able to upload after manually upload a file to find the exact xpath62 self.driver.find_element(By.XPATH, "//input[@type='file']").send_keys(file_path)63 self.driver.find_element(By.XPATH, "//input[@type='submit']").click()64 print("File uploaded : '" + file_path + "'")65 def click_visible_elements(self, element_locator: Locator, timeout: int = 5) -> None:66 """Click element(s) that only visible"""67 elements = self.driver.find_elements(*element_locator)68 for element in elements:69 if element.is_displayed():70 element.click()71 def download_file(self, file_name: str) -> None:72 """Download a file from Google Drive"""73 # Click a file with specific name74 file_locator = Locator(By.XPATH, "//div[text()='" + file_name + "']")75 self.right_click_element(file_locator)76 # Google's Animation Delay77 time.sleep(1)78 # Click the download button79 self.click_visible_elements(Address.DOWNLOAD_BTNs)...

Full Screen

Full Screen

test_demo_site.py

Source:test_demo_site.py Github

copy

Full Screen

...37 self.assert_true(self.is_selected("#checkBox1"))38 self.assert_false(self.is_selected("#checkBox2"))39 self.assert_false(self.is_selected("#checkBox3"))40 self.assert_false(self.is_selected("#checkBox4"))41 self.click_visible_elements("input.checkBoxClassB")42 self.assert_true(self.is_selected("#checkBox2"))43 self.assert_true(self.is_selected("#checkBox3"))44 self.assert_true(self.is_selected("#checkBox4"))45 self.assert_false(self.is_element_visible(".fBox"))46 self.switch_to_frame("#myFrame3")47 self.assert_true(self.is_element_visible(".fBox"))48 self.assert_false(self.is_selected(".fBox"))49 self.click(".fBox")50 self.assert_true(self.is_selected(".fBox"))51 self.switch_to_default_content()52 self.assert_link_text("seleniumbase.com")53 self.assert_link_text("SeleniumBase on GitHub")54 self.assert_link_text("seleniumbase.io")55 self.click_link("SeleniumBase Demo Page")...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run SeleniumBase automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful