亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
輕松自動化---selenium-webdriver(python) (四)
作者:網絡轉載 發布時間:[ 2013/8/12 14:49:14 ] 推薦標簽:

  將這段代碼保存復制到記事本中,將保存成checkbox.html文件。(注意,這個頁面需要和我們的自動化腳本放在同一個目錄下)

   check box

  第一種方法:

  通過瀏覽器打個這個頁面我們看到三個復選框和兩個單選框。下面我們來定位這三個復選框。

# -*- coding: utf-8 -*-
from selenium import webdriver
import time
import os

dr = webdriver.Firefox()
file_path =  'file:///' + os.path.abspath('checkbox.html')
dr.get(file_path)

# 選擇頁面上所有的input,然后從中過濾出所有的checkbox并勾選之
inputs = dr.find_elements_by_tag_name('input')
for input in inputs:
    if input.get_attribute('type') == 'checkbox':
        input.click()
time.sleep(2)

dr.quit()

  你可以試著把input.get_attribute('type') == 'checkbox' 中的checkbox 變成radio ,那這個腳本定位的會是兩個單選框。

  第二種定位方法:

# -*- coding: utf-8 -*-
from selenium import webdriver
import time
import os

dr = webdriver.Firefox()
file_path =  'file:///' + os.path.abspath('checkbox.html')
dr.get(file_path)

# 選擇所有的checkbox并全部勾上
checkboxes = dr.find_elements_by_css_selector('input[type=checkbox]')
for checkbox in checkboxes:
    checkbox.click()
time.sleep(2)

# 打印當前頁面上有多少個checkbox
print len(dr.find_elements_by_css_selector('input[type=checkbox]'))
time.sleep(2)

dr.quit()

  第二種寫法與第一種寫法差別不大,都是通過一個循環來勾選控件;如果你學過上一章的話,細心的你一定發現用的定位函數不一樣,第一種用的name ,第二種用的CSS 。

  如何去掉勾選:

  還有一個問題,有時候我們并不想勾選頁面的所有的復選框(checkbox),可以通過下面辦法把后一個被勾選的框去掉。如下:

# -*- coding: utf-8 -*-
from selenium import webdriver
import time
import os

dr = webdriver.Firefox()
file_path =  'file:///' + os.path.abspath('checkbox.html')
dr.get(file_path)

# 選擇所有的checkbox并全部勾上
checkboxes = dr.find_elements_by_css_selector('input[type=checkbox]')
for checkbox in checkboxes:
    checkbox.click()
time.sleep(2)

# 把頁面上后1個checkbox的勾給去掉
dr.find_elements_by_css_selector('input[type=checkbox]').pop().click()
time.sleep(2)

dr.quit()

  其實,去掉勾選表也邏輯也非常簡單,是再次點擊勾選的按鈕。可能我們比較迷惑的是如何找到“后一個”按鈕。pop() 可以實現這個功能。

  好吧!在web自動化的學習過程中,我們必須要知道一些前端的東西,這里擴展一下:

  http://www.w3school.com.cn/js/jsref_pop.asp

  嘗試:

  把find_elements_by_css_selector('input[type=checkbox]').pop().click() 中的checkbox 變成radio 會是什么效果,自己嘗試一下吧!

相關鏈接:
上一頁12下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 亚洲七七久久精品中文国产 | 国产成人精品999在线 | 欧美在线一级片 | 亚洲色图制服诱惑 | 欧美成人a人片 | 亚洲日本天堂 | 妞干网在线免费视频 | 天天摸天天碰成人免费视频 | 亚洲第一免费视频 | 国产91精品高跟丝袜在线 | jizjizjiz亚洲大全 | 日本精品高清一区二区不卡 | 精品在线视频免费 | 天天久久 | 欧美色图偷窥自拍 | 久久综合九色婷婷97 | 男女免费观看视频 | 欧美成人一区二区三区不卡视频 | 日韩精品一区二区三区四区 | 九九在线精品视频播放 | 欧美视频在线免费 | 免费日韩毛片 | 欧美成人性生活片 | 一级全黄色片 | 18成禁人视频免费 | www日韩免费高清视频 | 国产精品久久天天影视 | 国产1区2区3区在线观看 | 免费看男人靠女人靠到爽 | 91精品一区二区三区久久久久 | 久久免费香蕉视频 | 国产精品免费看久久久麻豆 | 人人揉人人添人人捏人人看 | 国产在线91精品天天更新 | 欧美国产精品 | 男女91视频 | 亚洲视频在线精品 | 成人小视频免费在线观看 | 最新黄色在线 | 午夜视频在线播放 | 欧美午夜性 |