qileilove

          blog已經(jīng)轉(zhuǎn)移至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()

            百度搜索設(shè)置下拉框操作

          #-*-coding=utf-8

          from selenium import webdriver

          import os,time

          driver= webdriver.Firefox()

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


          #進入搜索設(shè)置頁

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


          #設(shè)置每頁搜索結(jié)果為100條

          m=driver.find_element_by_name("NR")

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

          time.sleep(2)


          #保存設(shè)置的信息

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

          time.sleep(2)

          driver.switch_to_alert().accept()

           

          #跳轉(zhuǎn)到百度首頁后,進行搜索表(一頁應(yīng)該顯示100條結(jié)果)

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

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

          time.sleep(3)

          driver.quit()

            解析:

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

            driver.switch_to_alert().accept()

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

            –  switch_to_alert()

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

            – accept()

            接受警告提示

          相關(guān)文章:

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

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

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

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

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 海晏县| 牙克石市| 德江县| 长沙县| 长沙市| 晋中市| 柘城县| 冀州市| 南康市| 会同县| 镇沅| 云林县| 交城县| 庄河市| 邯郸县| 丹东市| 清徐县| 外汇| 永登县| 海口市| 湖北省| 左权县| 元阳县| 新昌县| 塘沽区| 重庆市| 利津县| 吴旗县| 海阳市| 建水县| 开原市| 唐河县| 合作市| 公主岭市| 岑巩县| 麦盖提县| 延庆县| 江源县| 德安县| 雅江县| 赤水市|