作为一个测试人员,我们日常做的比较多的就是针对测试环境和预发环境做测试,但是真实的环境怎么做测试呢?因为很多线上的环境,账号登陆遇到的第一关就是验证码问题哦,我们可以先手动登陆,然后获取cookie 保存本地文件中,然后再读取文件执行就可以了哦!
获取cookie 文件的脚本如下:
import json
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
chromeOptions = webdriver.ChromeOptions()
#让浏览器不显示自动化测试
chromeOptions.add_argument('disable-infobars')
driver.get("https://www.lanqiao.cn/questions/")
driver.maximize_window()
driver.find_element_by_xpath('//*[@id="main-nav-collapse"]/ul[2]/li[2]/a/span').click()
driver.switch_to.frame(driver.find_element_by_id('layui-layer-iframe1'))
# 强制等待时间5s ,在这段时间扫码或者输入验证码登陆
time.sleep(5)
print("账号登录成功")
print('切换网页')
driver.switch_to.window(driver.window_handles[-1])
driver.implicitly_wait(5)
time.sleep(5)
cookies = driver.get_cookies()
jsonCookies = json.dumps(cookies)
with open('shiyanlou_cookies.json', 'w') as f:
f.write(jsonCookies)
driver.refresh()
driver.quit()
读取cookie 的脚本
import json
import time
from selenium import webdriver
driver = webdriver.Chrome()
chromeOptions = webdriver.ChromeOptions()
#让浏览器不显示自动化测试
chromeOptions.add_argument('disable-infobars')
driver.get("https://www.lanqiao.cn/questions/")
# 首先清除由于浏览器打开已有的cookies
driver.delete_all_cookies()
with open('shiyanlou_cookies.json', 'r') as f:
# 使用json读取cookies 注意读取的是文件 所以用load而不是loads
cookies_list = json.load(f)
for cookie in cookies_list:
driver.add_cookie(cookie)
time.sleep(2)
driver.refresh()
time.sleep(2)
driver.refresh()
# driver.find_element_by_xpath('check-text').click()
# 签到
driver.find_element_by_class_name('check-text').click()
driver.save_screenshot('签到打卡成功.png')
driver.quit()
一些小的知识点,喜欢的点赞评论哦,互相讨论一下! +
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)