qileilove

          blog已經(jīng)轉移至github,大家請訪問 http://qaseven.github.io/

          輕松自動化---selenium-webdriver(python) (十)

          本節(jié)重點

            處理下拉框

            switch_to_alert()

            accept()

            下拉框是我們最常見的一種頁面元素,對于一般的元素,我們只需要一次就定位,但下拉框里的內(nèi)容需要進行兩次定位,先定位到下拉框,再定位到下拉框內(nèi)里的選項。

            drop_down.html

          <html>

          <body>

          <select id="ShippingMethod" onchange="updateShipping(options[selectedIndex]);" name="ShippingMethod">

          <option value="12.51">UPS Next Day Air ==> $12.51</option>

          <option value="11.61">UPS Next Day Air Saver ==> $11.61</option>

          <option value="10.69">UPS 3 Day Select ==> $10.69</option>

          <option value="9.03">UPS 2nd Day Air ==> $9.03</option>

          <option value="8.34">UPS Ground ==> $8.34</option>

          <option value="9.25">USPS Priority Mail Insured ==> $9.25</option>

          <option value="7.45">USPS Priority Mail ==> $7.45</option>

          <option value="3.20" selected="">USPS First Class ==> $3.20</option>

          </select>

          </body>

          </html>

            將上面的代碼保存成html通過瀏覽器打開會看到一個最簡單常見的下拉框,下拉列表有幾個選項。

            現(xiàn)在我們來選擇下拉列表里的$10.69

          #-*-coding=utf-8

          from selenium import webdriver

          import os,time

          driver= webdriver.Firefox()

          file_path =  'file:///' + os.path.abspath('drop_down.html')

          driver.get(file_path)

          time.sleep(2)

          m=driver.find_element_by_id("ShippingMethod")

          m.find_element_by_xpath("http://option[@value='10.69']").click()

          time.sleep(3)

          driver.quit()


           解析:

            這里可能和之前的操作有所不同,首先要定位到下拉框的元素,然后選擇下拉列表中的選項進行點擊操作。

            m=driver.find_element_by_id("ShippingMethod")

            m.find_element_by_xpath("http://option[@value='10.69']").click()

            百度搜索設置下拉框操作

          #-*-coding=utf-8

          from selenium import webdriver

          import os,time

          driver= webdriver.Firefox()

          driver.get(http://www.baidu.com)


          #進入搜索設置頁

          driver.find_element_by_link_text("搜索設置").click()


          #設置每頁搜索結果為100條

          m=driver.find_element_by_name("NR")

          m.find_element_by_xpath("http://option[@value='100']").click()

          time.sleep(2)


          #保存設置的信息

          driver.find_element_by_xpath("http://input[@value='保存設置']").click()

          time.sleep(2)

          driver.switch_to_alert().accept()

           

          #跳轉到百度首頁后,進行搜索表(一頁應該顯示100條結果)

          driver.find_element_by_id("kw").send_keys("selenium")

          driver.find_element_by_id("su").click()

          time.sleep(3)

          driver.quit()

            解析:

            當我們在保存百度的設置時會會彈出一個確定按鈕;我們并沒按照常規(guī)的方法去定位彈窗上的“確定”按鈕,而是使用:

            driver.switch_to_alert().accept()

            完成了操作,這是因為彈窗比較是一個具有唯一性的警告信息,所以可以用這種簡便的方法處理。

            –  switch_to_alert()

            焦點集中到頁面上的一個警告(提示)

            – accept()

            接受警告提示

          相關文章:

          輕松自動化---selenium-webdriver(python) (九)

          輕松自動化---selenium-webdriver(python) (十一)

          posted on 2013-09-06 10:50 順其自然EVO 閱讀(603) 評論(0)  編輯  收藏 所屬分類: selenium and watir webdrivers 自動化測試學習

          <2013年9月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 南昌县| 漠河县| 丰镇市| 台北县| 青铜峡市| 无为县| 天台县| 双鸭山市| 阳城县| 赣州市| 许昌市| 保康县| 盐源县| 巍山| 辽阳县| 苏尼特左旗| 读书| 峨山| 两当县| 大兴区| 蒙自县| 凤翔县| 丽江市| 高安市| 尚志市| 平潭县| 库车县| 永靖县| 江都市| 金平| 新余市| 梅州市| 弥渡县| 平阳县| 黔东| 诏安县| 林州市| 吉隆县| 亳州市| 青州市| 长兴县|