在驗證瀏覽器中cookie是否正確時,有時基於真實cookie的測試是沒法經過白盒和集成測試進行的。Webdriver提供了操做Cookie的相關方法,能夠讀取,添加和刪除cookie信息。python
文本webdriver操做cookie()的方法:web
get_cookie(): 得到全部cookie信息。瀏覽器
get_cookie(name):返回字典的key爲name的cookie服務器
add_cookie(cookie_dict):添加cookie。「cookie_dict」指字典對象,必須有name和value值。cookie
delete_cookie(name,optionsString):刪除cookie信息。「name」是要刪除的cookie的名稱。「optionsString」是該cookie的選項,目前支持的選項包括「路徑」,「域」app
delete_all_cookies():刪除全部cookie信息。dom
1、獲取cookie學習
2、添加cookie測試
3、使用cookie繞開登陸驗證碼網站
經過向瀏覽器中添加cookie能夠繞過登陸的驗證碼。在登陸的時候勾選記住密碼,當下次訪問該網站時就默認處於登陸狀態了。記住密碼功能其實就記錄了瀏覽器的cookie中。經過webdriver來操做瀏覽器的cookie,能夠經過add_cookie()方法將用戶名密碼寫入瀏覽器cookie,當再次訪問時,服務器將直接讀取瀏覽器的cookie進行登陸。
4、參考代碼
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Author : chen # @File : cookie.py # @Software: PyCharm from selenium import webdriver import time url = 'http://192.168.20.213:xxxx/manager/application' driver = webdriver.Firefox() driver.get(url) driver.implicitly_wait(30) cookie1 = { 'domain':'192.168.20.213', 'name':'JSESSIONID', 'value':'5D28C34424E58D1EA4E6AB65870AD432', # u'expiry':u'9223372036854776000', 'path':'/manager/', 'secure':False, 'httpOnly': True} cookie2 = { 'domain':'192.168.20.213', 'name':'_jfinal_captcha', 'value':u'd0c8954d454cf4be6968d9cda0c4cecc', # u'expiry':u'9223372036854776000', 'path':'/', 'secure':False, 'httpOnly': True} cookie3 = { 'domain':'192.168.20.213', 'name':'HiPaySessionId', 'value':'dlkW4jQ2pH5UiQPHH9t7izTr1r0vibgM1Suw8g2A5zEN+AAsd4JgKvUwm4+QMtuV4fRx6UNTiC0XscAoIWgNX2hTTbudrbPNqPD9zNP94alMqofF31U+lWYi8FBON2O7RWQN2j3106Zft1oTL8LLcXBjHiddYA9JU6l0P5arkxWVqnW512Cg7MARH9mf5UT3HKveqaXJuFbKJiE/a9OCzaexFz+eRVCAG68UO3ffOr9kQpf1pOBAFLUaKULIDetl', # u'expiry':u'1513909626', 'path':'/', 'secure':False, 'httpOnly': True} driver.add_cookie(cookie1) driver.add_cookie(cookie2) driver.add_cookie(cookie3) time.sleep(3) driver.refresh() time.sleep(5) driver.quit()