有的系统是使用cookies保持登陆的,而RF的Request库里面没有像Selenium2Library里面一样操作cookies的关键字,若接口需要登录则只能用UI自动化先登录,然后再将cookies添加到header中,保持登陆状态

目录

1、Selenium2Library操作cookie

2、cookies的应用

1、Selenium2Library操作cookie

#1、添加cookies,名称为key,值为value
Add Cookie key value #2、删除所有的cookies
Delete All Cookies #3、删除名称为key的cookie
Delete Cookie key #4、获取所有的cookies
Get Cookies #5、获取名称为key的cookie的value值,get cookie这个是在selenium2Library3.2以后的版本的应用
Get Cookie
Get Cookie Value

应用:需要使用cookie=${cookies}这种固定格式来给header传入cookie

2、cookies的应用

第一步:通过抓包工具判断接口是用cookie保持登陆的

第二步:导入selenium2Library这个库

第三步:将获取cookies的UI登陆写成一个关键字,获取cookies的值作为返回值并设置为全局变量

    Open Browser    http://localhost:8090/jpress/admin/login    chrome
Input Text name=username ${user}
sleep 3
Input Text name=password ${psw}
Click Button xpath=//*[@id="loginform"]/div[3]/div[2]/button
${m} get cookies
log ${m}
${cookies} get cookie value user
Set Global Variable ${cookies}

第四步:给需要保持登陆的接口传入cookies

${cookies}	登录	root	123456
log ${cookies}
${cookie} Set Variable user=${cookies}
Create Session api http://localhost:8090/jpress
${headers} Create Dictionary Content-Type=application/x-www-form-urlencoded Cookie=${cookie}
${data} Create Dictionary user.username=test22 user.nickname=test22
${m} Post Request api /admin/user/save
${i} To Json ${m.content}
${n} Get From Dictionary ${i} message
Should Contain ${n} ok

  

  

robotframework之使用cookies登陆的更多相关文章

  1. robotframework自动化系列:登陆操作

    robotframework自动化系统:登录 robotframework对于编程能力比较弱的测试人员而言,真的是雪中送炭!我们可以使用robotframework根据之前完成的测试用例,一步步完善自 ...

  2. scrapy加载cookies登陆

    import scrapy from xxxx.items import XXXXItem from scrapy.http.request import Request class ZndsSpid ...

  3. java模拟Cookies登陆

    在使用java访问URL时,如果该URL需要身份验证,那么就不能够直接访问,因为没有登陆.那么,如何解决这个问题呢? 方法是使用java模拟登陆,登陆后记录下cookie信息,在下次发起请求时时将co ...

  4. python3爬虫-通过selenium登陆拉钩,爬取职位信息

    from selenium import webdriver from selenium.common.exceptions import NoSuchElementException from se ...

  5. python模拟登陆豆瓣——简单方法

    学爬虫有一段时间了,前面没有总结又重装了系统,导致之前的代码和思考都没了..所以还是要及时整理总结备份.下面记录我模拟登陆豆瓣的方法,方法一登上了豆瓣,方法二重定向到了豆瓣中“我的喜欢”列表,获取了第 ...

  6. python-selenium登陆今日头条

    https://blog.csdn.net/a942242856/article/details/88379727 原文地址:http://www.bianbingdang.com/article_d ...

  7. koa 实现session登陆

    在我们访问一些网站内部内容的时候,通常都会先验证我们是否已经登陆,如果登陆了就跳转到内容页面否则就跳转或者弹出登陆页面. 但是HTTP协议是没有状态的协议,无法标识一个用户的登录状态. 于是Cooki ...

  8. 使用python进行接口测试(二)

    之前使用过urllib和urllib2做接口测试,在做的途中,感觉使用urllib2直接进行的get,post 请求并没有那么好用.作为测试人员,所需要的测试工具应当以方便为第一要务,测试的耗时只要是 ...

  9. angular 1.5.3各种模块使用(一)

    1.angular cookie的用法:(1)引入angular-cookies(2)注入ngCookies这模块(3)想要更改cookies存储位置的话要添加内置服务$cookiesProvider ...

随机推荐

  1. Maven项目构建利器03——第一个Maven工程

    1.Maven工程的结构 我们需要通过Maven进行自动化构建, 以编译为例, Maven要想自动进行编译, 那么它必须知道Java源文件保存在哪里,所以要遵守Maven的约定,也就是约定大于配置,配 ...

  2. MySQL发生系统错误2 系统无法找到指定文件

    https://blog.csdn.net/digitalmon/article/details/78152187 https://www.cnblogs.com/gaogaoyanjiu/p/104 ...

  3. java ArrayList迭代过程中删除

    第一种迭代删除方式: 第二种迭代删除方式: 第三种迭代删除: 第四种迭代删除: 第五种迭代删除: 第六种: ArrayList中remove()方法的机制,首先看源码: 真正的删除操作在fastRem ...

  4. python gitlab 学习笔记

    gitlab创建个人访问令牌(personal access token) https://blog.csdn.net/NGU2028070003/article/details/86634474 P ...

  5. Python _easygui详细版

    1. msgbox msgbox(msg='(Your message goes here)', title=' ', ok_button='OK', image=None, root=None) m ...

  6. 数据库基本概念及Oracle基本语句

    一.数据库分类 通常是按照数据模型的特点将传统数据库系统分成网状数据库.层次数据库和关系数据库三种. 1.网状数据库 顾名思义,网状数据库采用的是以记录类型为结点的网状数据模型,是一种导航式(Navi ...

  7. 【leetcode】1125. Smallest Sufficient Team

    题目如下: In a project, you have a list of required skills req_skills, and a list of people.  The i-th p ...

  8. net core 下 接受文件 测试

    /* IFormFileCollection Files 再Request对象下的From对象下的Files对象 public interface IFormFileCollection : IRea ...

  9. 2019hdu多校 K-th Closest Distance

    题目链接:Click here 大致题意:q次询问,每次询问你区间[L,R]中|p-ai|的值第k小的是多少 Solution: 直接找是很困难的,我们考虑二分答案,那么本题就十分简单了 我们对权值维 ...

  10. 2019 Multi-University Training Contest 3 T6 - Fansblog

    Fansblog Time Limit: 2000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submi ...