zoukankan      html  css  js  c++  java
  • katalon系列十五:给浏览器添加cookie自动登陆

    import org.openqa.selenium.Cookie
    import org.openqa.selenium.WebDriver
    import com.kms.katalon.core.webui.driver.DriverFactory
    
    WebUI.openBrowser('')
    
    '必须先访问一个地址,才能设置cookie'
    WebUI.navigateToUrl(GlobalVariable.G_URL)
    '获取driver'
    WebDriver driver = DriverFactory.getWebDriver()
    '设置cookie变量'
    Cookie ck = new Cookie("session", "6NuSrfC2AjwSLvBQlwvowA")
    '添加cookie'
    driver.manage().addCookie(ck)
    '刷新页面以使cookie生效'
    WebUI.refresh()

    代码如上,具体需要加什么cookie,需要问开发或自己去抓包分析,教程自行百度。

    可以看到操作Cookie都是用的Selenium本身的方法,包括Cookie的获取、增加、删除(如果你想退出登陆相应的可以把Cookie全清了),以下举些例子,具体大家可以去学习Selenium。

    package com.test.cookies;
    
    import org.openqa.selenium.Cookie;
    import org.openqa.selenium.JavascriptExecutor;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    
    public class CookieOperation {
    
        public static void main(String[] args) {
    
            WebDriver driver = new FirefoxDriver();
            driver.get("http://www.baidu.com");
            driver.manage().window().maximize();
    
            // 获取所有cookie个数
            System.out.println(driver.manage().getCookies().size());
    
            // 增加cookie
            Cookie cookie = new Cookie("username", "name", "/", null);
            driver.manage().addCookie(cookie);
            driver.manage().addCookie(new Cookie("password", "ppppwwww", "/", null));
            
            // 以name获取cookie
            String name = driver.manage().getCookieNamed("username").getValue();
            String info = "用户名是: " + name;
            String js = "alert("" + info + "");";
            System.out.println(js);
            ((JavascriptExecutor) driver).executeScript(js);
    
            Thread.sleep(5000);
            driver.switchTo().alert().dismiss();
            
            // 以name删除cookie
            driver.manage().deleteCookieNamed("password");
    
            // 再次获取所有cookie个数,应该比之前多一个
            System.out.println(driver.manage().getCookies().size());
    
            driver.quit();
        }
    }

    ---------------------------------------------------------------------------------

    关注微信公众号即可在手机上查阅,并可接收更多测试分享~

  • 相关阅读:
    音乐分类/生成杂记
    音视频编码笔记
    《The challenge of realistic music generation: modelling raw audio at scale》论文阅读笔记
    使用基于Caffe的MobileNet分类踩坑备忘录
    四大轻量化模型对比(转)
    WaveNet: 原始音频生成模型
    《SONG FROM PI: A MUSICALLY PLAUSIBLE NETWORK FOR POP MUSIC GENERATION》论文笔记
    上采样 及 Sub-pixel Convolution (子像素卷积)
    python之sys._getframe() 用于查看函数被什么函数调用以及被第几行调用及被调用函数所在文件
    11
  • 原文地址:https://www.cnblogs.com/songzhenhua/p/10197731.html
Copyright © 2011-2022 走看看