Selenium WebDriver-操作單選框


  1. 先判斷按鈕是否已經被選中
  2. 如果沒有被選中,才可以點擊
    #encoding=utf-8
    import unittest
    import time
    import chardet
    from selenium import webdriver
     
    class VisitSogouByIE(unittest.TestCase):
    
        def setUp(self):
            #啟動IE瀏覽器
            #self.driver = webdriver.Firefox(executable_path = "e:\\geckodriver")
            self.driver = webdriver.Ie(executable_path = "e:\\IEDriverServer")
            
        def test_operateRadio(self):
            url = "http://127.0.0.1/test_radio.html"
            # 訪問自定義的html網頁
            self.driver.get(url)
            # 使用xpath定位獲取value屬性值為'berry'的input元素對象,也就是“草莓”選項
            berryRadio = self.driver.find_element_by_xpath("//input[@value='berry']")
            # 點擊選擇“草莓”選項
            berryRadio.click()
            # 斷言“草莓”復選框被成功選中
            self.assertTrue(berryRadio.is_selected(), u"草莓復選框未被選中!")
            if berryRadio.is_selected():
                # 如果“草莓”復選框被成功選中,重新選擇“西瓜”選項
                watermelonRadio = self.driver.find_element_by_xpath("//input[@value='watermelon']")
                watermelonRadio.click()
                # 選擇“西瓜”選項以后,斷言“草莓”選項處於未被選中狀態
                self.assertFalse(berryRadio.is_selected())
            # 查找所有name屬性值為“fruit”的單選框元素對象,並存放在radioList列表中
            radioList = self.driver.find_elements_by_xpath("//input[@name='fruit']")
            '''
            循環遍歷radioList中的每個單選按鈕,查找value屬性值為“orange”的單選框,
            如果找到此單選框以后,發現未處於選中狀態,則調用click方法選中該選項。
            '''
            for radio in radioList:
                if radio.get_attribute("value") == "orange":
                    if not radio.is_selected():
                        radio.click()
                        self.assertEqual(radio.get_attribute("value"), "orange")
    
            time.sleep(5)
        def tearDown(self):
            # 退出IE瀏覽器
            self.driver.quit()
    
    if __name__ == '__main__':
        unittest.main()

     


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM