<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] 本篇主要介紹單選框和復選框的操作 ## 一、認識單選框和復選框 1. 先認清楚單選框和復選框長什么樣 ![](https://img.kancloud.cn/c2/b2/c2b2f27fdc6c50d64b43f6187b7b6e7c_650x283.png) 2. 各位小伙伴看清楚哦,上面的單選框是圓的;下圖復選框是方的,這個是業界的標準,要是開發小伙伴把圖標弄錯了,可以先抽他了。 <br /> ## 二、radio和checkbox源碼 ``` <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>單選框和復選框</title> </head> <body> <h4>單選:性別</h4> <form> <label for="radio1">男</label> <input name="sex" value="male" id="boy" type="radio"><br /> <label for="radio2">女</label> <input name="sex" value="male" id="girl" type="radio"> </form> <h4>微信公眾號:自動化測試</h4> <form> <input id="c1" type="checkbox">selenium<br /> <input id="c2" type="checkbox">python<br /> <input id="c3" type="checkbox">appium<br /> </form> </body> </html> ``` <br /> ## 三、單選:radio 1. 首先是定位選擇框的位置 ![](https://img.kancloud.cn/e7/3c/e73c9b3b17d920c8f47b523e9438fdce_791x426.png) 2. 定位id,點擊圖標就可以了,代碼如下(獲取url地址方法:在瀏覽器url地址欄復制出地址就可以了) 3. 先點擊boy后,等十秒再點擊girl,觀察頁面變化 ``` # coding:utf-8 from selenium import webdriver import time url = "G:/py/selenium/test/selenium_day03/radio_and_checkbox.html" driver = webdriver.Chrome() driver.get(url) driver.find_element_by_id("boy").click() ``` <br /> ## 四、復選框:checkbox 1. 勾選單個框,比如勾選selenium這個,可以根據它的id=c1直接定位到點擊就可以了 ``` # coding:utf-8 from selenium import webdriver import time url = "G:/py/selenium/test/selenium_day03/radio_and_checkbox.html" driver = webdriver.Chrome() driver.get(url) driver.find_element_by_id("c1").click() ``` 2. 那么問題來了:如果想全部勾選上呢? <br /> ## 五、全部勾選: ??? 1.全部勾選,可以用到定位一組元素,從上面源碼可以看出,復選框的type=checkbox,這里可以用xpath語法:.//\*\[@type='checkbox'\] ``` # coding:utf-8 from selenium import webdriver import time url = "G:/py/selenium/test/selenium_day03/radio_and_checkbox.html" driver = webdriver.Chrome() driver.get(url) # 復選框全選 checkboxs = driver.find_elements_by_xpath(".//*[@type='checkbox']") for i in checkboxs: if not i.is_selected(): i.click() ``` 2. 這里注意,敲黑板做筆記了:**find\_elements**是不能直接點擊的,它是復數的,所以只能先獲取到所有的checkbox對象,然后通過for循環去一個個點擊操作 <br /> ## 六、判斷是否選中:is_selected() 1. 有時候這個選項框,本身就是選中狀態,如果我再點擊一下,它就反選了,這可不是我期望的結果,那么可不可以當它是沒選中的時候,我去點擊下;當它已經是選中狀態,我就不點擊呢?那么問題來了:如何判斷選項框是選中狀態? 2. **判斷元素是否選中這一步才是本文的核心內容**,點擊選項框對于大家來說沒什么難度。獲取元素是否為選中狀態,打印結果如下圖。 3. 返回結果為bool類型,沒點擊時候返回False,點擊后返回True,接下來就很容易判斷了,既可以作為操作前的判斷,也可以作為測試結果的判斷 ![Snipaste_2020-08-17_16-20-22.png](https://i.loli.net/2020/08/17/wIVkuHAUOoBtjl4.png) <br /> 七、參考代碼: ``` # coding:utf-8 from selenium import webdriver import time url = "G:/py/selenium/test/selenium_day03/radio_and_checkbox.html" driver = webdriver.Chrome() driver.get(url) # 沒點擊操作前,判斷選項框狀態 s = driver.find_element_by_id("boy").is_selected() print(s) driver.find_element_by_id("boy").click() # 點擊后,判斷元素是否為選中狀態 r = driver.find_element_by_id("boy").is_selected() print(r) # 復選框單選 driver.find_element_by_id("c1").click() # 復選框全選 checkboxs = driver.find_elements_by_xpath(".//*[@type='checkbox']") for i in checkboxs: if not i.is_selected(): i.click() ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看