python自動(dòng)化測(cè)試selenium操作checkbox和radiobox技術(shù)
form表單中經(jīng)常涉及復(fù)選框(checkbox)和單選框(radiobox),如用戶的愛(ài)好跑步、游泳、跳舞可以使用復(fù)選框,性別男、女可以使用單選框。
(1)checkbox選擇或反選:使用click()方法
(2)radiobox有相同的名稱(chēng),多個(gè)值,可先通過(guò)名稱(chēng)獲得,再通過(guò)值判斷,選擇使用click()方法。
示例頁(yè)面:
頁(yè)面代碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="javascript:alert('selenium操作表單中checkbox和radiobutton')"> 測(cè)試from表單操作checkbox和radiobutton<br> 跑步:<input type="checkbox" name="running" value="running"><br> 游泳:<input type="checkbox" name="swimming" value="swimming"><br> 跳舞:<input type="checkbox" name="dancing" value="dancing"><br> <!--<hr>分界線--> <hr> 性別:<br> 男:<input type="radio" name="gender" value="male"><br> 女:<input type="radio" name="gender" value="female"><br> <input type="submit" value="login"> </form> </body> </html>
示例腳本:
import os from selenium import webdriver from time import sleep class TestCheckBoxOrRadioBtn(object): def setup(self): self.driver = webdriver.Chrome() path = os.path.dirname(os.path.abspath(__file__)) file_path = 'file:///'+path+'/html/form.html' self.driver.get(file_path) def test_checkbox(self): #定位跳舞 dancing=self.driver.find_element_by_name("dancing") #如果沒(méi)有選擇,則點(diǎn)擊選擇 if not dancing.is_selected(): dancing.click() sleep(2) running = self.driver.find_element_by_name("running") if not running.is_selected(): running.click() sleep(2) swimming = self.driver.find_element_by_name("swimming") if not swimming.is_selected(): swimming.click() sleep(2) #再次點(diǎn)擊取消選擇游泳 swimming.click() sleep(2) self.driver.quit() def test_radio(self): #獲得元素列表 gender= self.driver.find_elements_by_name("gender") #選中性別男 gender[0].click() sleep(2) # 選中性別女 gender[1].click() sleep(2) self.driver.quit() if __name__ == '__main__': case = TestCheckBoxOrRadioBtn() case.test_checkbox() case.test_radio()
運(yùn)行結(jié)果:
以上就是python自動(dòng)化測(cè)試selenium操作checkbox和radiobox技術(shù)的詳細(xì)內(nèi)容,更多關(guān)于selenium操作checkbox和radiobox的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
關(guān)于Python-pip安裝失敗問(wèn)題及解決
這篇文章主要介紹了關(guān)于Python-pip安裝失敗問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02Python實(shí)現(xiàn)猜年齡游戲代碼實(shí)例
這篇文章主要介紹了Python實(shí)現(xiàn)猜年齡游戲代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03Python3利用SMTP協(xié)議發(fā)送E-mail電子郵件的方法
SMTP(Simple Mail Transfer Protocol)即簡(jiǎn)單郵件傳輸協(xié)議,它是一組用于由源地址到目的地址傳送郵件的規(guī)則,由它來(lái)控制信件的中轉(zhuǎn)方式。下面這篇文章主要給大家介紹了關(guān)于Python3如何利用SMTP協(xié)議發(fā)送E-mail電子郵件的方法,需要的朋友可以參考下。2017-09-09django 解決自定義序列化返回處理數(shù)據(jù)為null的問(wèn)題
這篇文章主要介紹了django 解決自定義序列化返回處理數(shù)據(jù)為null的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05Python中decimal.Decimal類(lèi)型和float類(lèi)型的比較
這篇文章主要介紹了Python中decimal.Decimal類(lèi)型和float類(lèi)型的比較,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11分享一枚pycharm激活碼適用所有pycharm版本我的pycharm2020.2.3激活成功
這篇文章主要分享一枚pycharm激活碼適用所有pycharm版本我的pycharm2020.2.3激活成功,需要的朋友可以參考下2020-11-11本地部署Python?Flask并搭建web問(wèn)答應(yīng)用程序框架實(shí)現(xiàn)遠(yuǎn)程訪問(wèn)的操作方法
Flask是一個(gè)Python編寫(xiě)的Web微框架,使用Python語(yǔ)言快速實(shí)現(xiàn)一個(gè)網(wǎng)站或Web服務(wù),本期教程我們使用Python Flask搭建一個(gè)web問(wèn)答應(yīng)用程序框架,并結(jié)合cpolar內(nèi)網(wǎng)穿透工具將我們的應(yīng)用程序發(fā)布到公共網(wǎng)絡(luò)上,實(shí)現(xiàn)可多人遠(yuǎn)程進(jìn)入到該web應(yīng)用程序訪問(wèn),需要的朋友可以參考下2023-12-12Python自動(dòng)化運(yùn)維之Ansible定義主機(jī)與組規(guī)則操作詳解
這篇文章主要介紹了Python自動(dòng)化運(yùn)維之Ansible定義主機(jī)與組規(guī)則操作,結(jié)合實(shí)例形式分析了自動(dòng)化運(yùn)維工具Ansible定義主機(jī)與組規(guī)則相關(guān)配置操作與注意事項(xiàng),需要的朋友可以參考下2019-06-06