Selenium基本使用與注意事項
#coding=utf-8 from selenium import webdriver import time import random driver = webdriver.Chrome() driver.get('url') driver.find_element_by_name('tb_uname').send_keys('username') driver.find_element_by_name('tb_pwd').send_keys('password') driver.find_element_by_name('tb_code').send_keys('') time.sleep(10) driver.find_element_by_name('btnSave').click() driver.find_element_by_link_text('xxxx').click() driver.find_element_by_link_text('yyyy').click() length = len(driver.find_element_by_xpath("http://div[@id='list']").find_elements_by_link_text('編輯')) for i in range(0,length): l = random.randint(1,9) editions = driver.find_element_by_xpath("http://div[@id='list']").find_elements_by_link_text('編輯') edit = editions[i] edit.click() driver.find_element_by_id('txtnewstype3').click() driver.find_element_by_xpath('//ul[@id="typeoption3"]/li[%d]'%l).click() time.sleep(1) driver.find_element_by_id('ckhead').click() time.sleep(1) driver.find_element_by_id('ckpush').click() time.sleep(1) driver.find_element_by_id('btnsave').click() time.sleep(1) driver.switch_to_alert().accept() driver.back() time.sleep(1) driver.find_element_by_xpath("http://div[@id='list']").find_element_by_link_text('刪除').click() |
首先注意事項
有時頁面還沒加載出來,腳本找不到元素,就會報錯,所以添加思考時間是非常必要的,切記。
進入一個頁面后,簡單實用back()函數,再進行查找元素時,會報錯,所以要將不斷來回查找的元素放進循環體內
driver.switch_to_alert().accept() 處理彈窗"接受"作用
l = random.randint(1,9) 隨機函數,根據用例要求進行實用
'[%d]'%l 直白的理解就是將后面 l 的值傳遞給%d(整數)
find_element_by_link_text 和 find_elements_by_link_text 有區別,后者主要是查找整個頁面相同的函數,即可迭代。
posted on 2014-06-30 18:17 順其自然EVO 閱讀(295) 評論(0) 編輯 收藏 所屬分類: selenium and watir webdrivers 自動化測試學習