options = webdriver.ChromeOptions()
#options.add_argument('-headless')
browser = webdriver.Chrome(executable_path="./chromedriver", options=options)
browser.get("http://127.0.0.1:8080/")
print browser.title
browser.find_element_by_name('username').send_keys("admin")
browser.find_element_by_name("password").send_keys("hunter2")
browser.find_element_by_tag_name("button").click()
print browser.get_cookies()
print 'loading another page: ' + url
#example url = example.com
browser.get(url)
我正在尝试进行涉及CORS的自动化测试。因此,我的要求是我成功登录到域A并设置一些cookie。此方法有效,当我执行get_cookies()
时会看到设置的cookie。接下来,我导航到另一个域B,该域向域A发出了CORS请求(正确设置了所有CORS标头,并对其进行了手动测试)。但是此请求失败,因为看起来当我导航到域B时,cookie被清除,因此请求失败。
有什么办法可以迫使Cookie无法清除?
注意:OSX上的Chrome和Firefox驱动程序具有相同的行为
答案 0 :(得分:0)
使用browser.navigate().to(url)
代替get()
。