当前位置:   article > 正文

【接口自动化】selenium库也有大用场(获取cookie)_接口自动化使用selenium获取

接口自动化使用selenium获取

相信有些童鞋在做接口、或者说接口自动化测试的过程中会遇到这样的场景:测试的接口,必须是需要登录后才能发起请求成功的。

那么怎么解决呢? 本着团队协作的精神,我们就去让开发同学开个后门,给你个“万能”值,那么你带着这个“万能”值在请求里,就可以畅通无阻了。

但是也不是开发都愿意干这样的事儿,而且很多测试童鞋脸皮也薄(O(∩_∩)O哈哈~),脸皮薄不提倡啊。那么就自己的事儿自己来吧。

既然是需要登录才可以请求,那我们就登录呗。咋登录呢?

selenium库用起来,然后用selenium获取浏览器cookie。下面demo一段登录操作,来登录被测试的系统。

  1. from selenium import webdriver
  2. driver = webdriver.Chrome()
  3. driver.get("http://xxx.xx.com/xxx/login") #打开登录地址
  4. driver.find_element_by_id("username").send_keys("xxx") #输入用户名
  5. driver.find_element_by_id("password").send_keys("xxxx") #输入密码
  6. driver.find_element_by_xpath("//button[.= '登录']").click() #点击登录
  7. cookie = driver.get_cookies() #这里就是获取cookie
  8. print(cookie)

让我们来康康到底拿到cookie了木有?

  1. [
  2. {
  3. 'domain': 'xxxx.xx.xxxx.com',
  4. 'httpOnly': True,
  5. 'name': 'SESSION',
  6. 'path': '/xxx/',
  7. 'secure': False,
  8. 'value': 'YjRjYzY1ODMtNjA1ZS00OWZmLWFmODQtZjhmY2ZjMmIxNzlj'
  9. }
  10. ]

看下浏览器F12,找到cookie,比对一下

OK,就是这个值了,那么就可以带着这个值开开心心的测试接口啦。

接口自动化可以采用pytest单元测试框架+requests库,简单粗暴,sei用sei资道。

翠花,上demo

  1. import requests
  2. import pytest
  3. HEADER = {
  4. 'Cookie': "SESSION=YjRjYzY1ODMtNjA1ZS00OWZmLWFmODQtZjhmY2ZjMmIxNzlj"
  5. }
  6. def test_01():
  7. r = requests.get("http://xxxx/finance/detail" ,headers=HEADER)
  8. result = r.json()
  9. print(result)
  10. if __name__ == '__main__':
  11. pytest.main(['-s', 'demo1.py'])

看下打印出的请求结果:

请求结果

当然了,接口自动化测试别忘记加断言哦,demo里就不写了。总之就是活学活用。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/384307
推荐阅读
相关标签
  

闽ICP备14008679号