当前位置: 首页 > news >正文

手把手教你做网站网站做vr的收费

手把手教你做网站,网站做vr的收费,系统管理网站,网站备案到公司名称同学们在做pytest接口自动化时,会遇到一个场景就是不同的测试用例需要有一个登录的前置步骤,登录完成后会获取到token,用于之后的代码中。首先我先演示一个常规的做法。 首先在conftest定义一个login的方法,方法返回token pytes…

同学们在做pytest接口自动化时,会遇到一个场景就是不同的测试用例需要有一个登录的前置步骤,登录完成后会获取到token,用于之后的代码中。首先我先演示一个常规的做法。

  1. 首先在conftest定义一个login的方法,方法返回token
@pytest.fixture(scope="function")
def login():header = {"Content-Type": "application/json"}data = {"username": "test","password": "test"}login_info = requests.post(url='http://.../login',json=data).json()return login_info['token']

2.在测试用例方法中引入这个方法,所有用到token,都需要使用login这个方法。

def test_user(login):token = login # 通过login获取token......
def test_address(login):token = login # 通过login获取token......

通过上面的方法,可以解决接口使用token的需求,不过这么做每次都会先执行login接口,有没有一种方法可以只执行一次login接口,后面的接口就不调用login接口了呢。经过老武测试,其实是可以做到的。

思路:login接口使用缓存,当有token的时候就使用token,就不调用login接口了,如果没有则调用login接口,再把token缓存起来。

那需要对上面login的方法进行改造,增加save_token方法,将token存起来。引入pickle模块,用来写数据。

import pickle
@pytest.fixture(scope="function")
def login():......# 增加缓存方法save_token(login_info['token'])return login_info['token']def save_token(token):# login_path为目录中一个存放token的文件路径,自己定义。with open(login_path, 'wb') as f:pickle.dump(login_info, f)f.close()

上面代码完成了token的写入,当没有token的时候token写入到文件中。如果有token,我们就不需要执行登录操作,直接使用文件中的token,这个时候代码需要继续改造。方法开始时判断当前是否存在保存token的文件,如果有则获取token,不再执行登录的操作。再增加一个读取文件内容的方法get_login_info

import pickle
@pytest.fixture(scope="function")
def login():if os.path.exists(login_info):return get_login_info(login_info)else:......# 增加缓存方法save_token(login_info['token'])return login_info['token']
# 增加一个读取文件的方法
def get_login_info():with open(login_path, 'rb') as f:data = pickle.load(f)f.close()return data

以上工作已经完成了90%,再来个收尾就完美了。每次执行用例结束后把存token文件删除,不然生成了一个token,代码判断token文件存在,就不会去调用登录接口。token一但过期,用例就会执行失败。

在conftest定义一个方法,每次执行用例都清理一下token文件。要注意级别是session级别哦。

@pytest.fixture(scope='session', autouse=True)
def clear_login_file():if os.path.exists(login_path):logger.info("清理token文件")os.remove(login_path)

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

在这里插入图片描述

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

http://www.hyszgw.com/news/72007.html

相关文章:

  • 广州网站建设藤虎wordpress怎么添加留言板
  • 餐饮美食网站模板源码centos怎么装WordPress
  • 给企业做网站收入app后端用什么开发
  • 网站分几个类型美的公司网站建设的目的
  • 我的世界皮肤做壁纸的网站数据库做图书管理系统网站
  • 一级a做爰片免费网站 小说重庆建站模板厂家
  • 网站建设内容论文济南智能网站建设服务
  • 公司怎么建设网站网站推广软件免费下载安装
  • 网站制作外包是怎么做的网站域名选择的原则
  • 汽车网站建设可行性分析做奢侈品网站有哪些
  • 专门做茶叶的网站虚拟产品货源网站
  • 如何做网站推广广告湖北什么是网络营销
  • 郑州网站怎么推广长沙棋牌软件制作开发
  • 会展网站建设情况wordpress静态化首页
  • 做短租类型的网站阿里云网站建设 部署与发布
  • 网站开发工作如何WordPress发图册
  • 有域名 有主机 怎么建设网站怎么建网站免费的
  • 学网站开发跟那个专业最相近做电商网站的步骤
  • 佛山网站搜索排名休闲度假村网站建设方案
  • 沈阳网站建设多少钱wordpress seven主题
  • 电脑做网站端口映射成都设计公司装修
  • 北京做网站海宇勇创如何学好js网站开发
  • 什么是营销型的网站推广大一网页设计作业成品免费
  • 视频网站建设价位做微信公众平台的网站
  • 高密网站建设价格网站seo优化管理系统
  • 东莞南城网站开发公司电话网站海外推广
  • 笔记本做网站福州高端建站
  • 工程施工人员招聘网站云南省工程建设交易系统网站
  • 北京西站地铁是几号线做网站用的腾讯云服务器
  • 网站建设颜色代码大连旅游必去景点