[英]No action to select multiple checkboxes with Selenium and Python
我的目標:
訪問特定頁面時,我需要單擊10個復選框
我的代碼:
def select_checkbox(self):
checkboxes = self.find_elements(EventsLocators.CHECKBOX_SELECTOR)
for each_checkbox in checkboxes:
each_checkbox.click()
我的問題:
測試結果顯示成功,但未選中任何復選框
我的定位器:
CHECKBOX_SELECTOR =(通過CSS_SELECTOR,“ Input [type ='checkbox']”))
HTML:
<span class="left">
<input id="id_qa-timesheets_facilitator_sign_complete" name="qa-timesheets_facilitator_sign_complete" type="checkbox">
<label>Time sheets complete with team lead sign off</label>
<br>
<span class="help_text"></span>
</span>
首先,檢查“ print checkboxes
是否真的顯示10個Web元素。 如果這樣,您仍然無法單擊復選框,請嘗試使用JS
click()
方法而不是常用方法(有時,普通click()
無法正常工作):
def select_checkbox():
checkboxes = driver.find_elements_by_css_locator('input[type="checkbox"]')
for each_checkbox in checkboxes:
if not each_checkbox.is_selected(): # just to be sure that you make check, but not uncheck
driver.execute_script('arguments[0].click()', each_checkbox)
由於我不熟悉您的框架,因此我將其作為簡單的函數進行,因此請根據需要進行更改
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.