通过UI自动化获取登录cookie,进行接口自动化测试


项目开展接口自动化,由于是sso单点登录,几番尝试使用接口登录获取token无果,决定使用UI自动化登录后获取登录token,方法如下:

 

 

 

 

 

代码实现如下: 

import time
from selenium import webdriver


class GetToken(object):
    def __init__(self):
        self.driver = webdriver.Chrome()

    def login(self):
        self.driver.get('http://122.224.230.26:20054/login')
        self.driver.maximize_window()
        self.driver.implicitly_wait(10)
        # 登录输入用户名,密码
        self.driver.find_element_by_id('username').send_keys('用户名')
        self.driver.find_element_by_id('password').send_keys('密码')
        self.driver.find_element_by_xpath('登录按钮').click()

        # 等待3秒,待session和token都成功返回并存到浏览器中
        time.sleep(3)
        data = self.driver.get_cookies()
        cookie_data = [item["name"] + "=" + item["value"] for item in data]
        cookie = ';'.join(item for item in cookie_data)
        # print(cookie)
        return cookie

    # 关闭浏览器
    def close_browser(self):
        self.driver.quit()


if __name__ == '__main__':
    gt = GetToken()
    gt.login()
    gt.close_browser()

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM