精华内容
下载资源
问答
  • (十五)-封装token和cookie获取方法get_token.py1 封装目的 1 封装目的 主要是封装token和cookie的获取方法; 注意:具体的方法要根据自己的实际项目修改; 目前该学生管理系统没有cookie和token,所以本文设计的...

    1 封装目的

    • 主要是封装tokencookie的获取方法;
    • 注意:具体的方法要根据自己的实际项目修改;
    • 目前是根据该学生管理系统写的cookie,目前该系统没有单独的token,如果你的项目有token和cookie的话,那就需要完善和修改这个脚本了,不一定通用。

    2 设计脚本

    • tools目录下新建名为get_token.py的python脚本;
      在这里插入图片描述

    展开全文
  • Jmeter怎么获取token

    2021-02-20 10:50:10
    Jmeter在平时的测试工作中,难免会用到 Jmeter 进行测试工作。在接口性能测试中,大多数接口都是需要鉴权的,那第一步就需要获取 token,用 Jmeter 怎么做呢?我们一起来看...

    Jmeter

    在平时的测试工作中,难免会用到 Jmeter 进行测试工作。在接口性能测试中,大多数接口都是需要鉴权的,那第一步就需要获取 token,用 Jmeter 怎么做呢?我们一起来看看。

    下载 Jmeter

    下载地址:http://jmeter.apache.org/download_jmeter.cgi
    

    打开下载页面后,下载 Jmeter 的二进制版本,因为直接解压就可以使用。

    同时你还需要为你的电脑下载安装 jdk8

    打开 Jmeter

    解压下载的安装包后,进入如下目录:

    apache-jmeter-5.4.1\apache-jmeter-5.4.1\bin
    

    找到 jmeter.bat,双击打开即可。

    使用 Jmeter 获取 token

    添加线程组

    打开 Jmeter 后会有一个默认的测试项目,我们直接向其中添加线程组即可。

    添加 HTTP 请求

    将 HTTP 请求改名为 get_token,同时输入服务器地址,协议,端口,URL,请求方式,请求体(含账号密码等信息)

    添加断言

    为了简单,我们直接添加响应码断言

    添加正则表达式提取器

    因为我们的 tokenresponse headers 中,所以选择从 header 中提取,正则表达式中(.+)token 内容,括号外为关键词匹配项。

    • 上面的 Apply to 选择 Main Sample only 也可以

    • 模板意为选择第几个匹配的字段,默认为第一个

    添加 shell 后置脚本

    目的是将这个线程组获取到的 token 设置为全局变量,可以跨线程组使用。

    脚本:${__setProperty(mytoken,${access_token},)}
    
    后续我们在其他线程组中直接使用 mytoken 变量即可拿到 token

    添加报告查看器

    我们添加最简单的结果树:

    注:对于 token 在请求体中的系统,提取 tk 方式类似,相信你可以搞定的。

    Tips

    Jmeter 初始化后的字体很小,不易观看,我们可以通过 Options 选项中的 Zoom in 菜单对字体进行放大。

    至此,完整的 Jmeter 获取 token 的介绍就结束了,希望能够帮助到你。

    往期推荐

    善待“老黄牛”!

    网页长截图竟如此简单

    FastApi-01-初识

    HttpRunner-01-初识

    用Python看穿马赛克!

    GitHub上最佳的25个Python库推荐!

    测试理论 | 性能测试

    Nose | 超轻的单元测试框架-入门

    史上最全●Python知识地图

    文章好看点这里

    展开全文
  • Postman接口之间参数化Token. 很多地方,有专门的API接口获取Token,然后其他的API在访问服务的时候使用​该Token。​ 1、POST 请求获取Token 比如下面这样子的一个POST请求,专门去获取Token,即返回的Json内容里面...

    Postman接口之间参数化Token.

    很多地方,有专门的API接口获取Token,然后其他的API在访问服务的时候使用​该Token。​

    1、POST 请求获取Token
    比如下面这样子的一个POST请求,专门去获取Token,即返回的Json内容里面的access_token值,然后供其他的API使用。

    POST https://www.ruancexiaosheng.com/oauth/accesstokena
    
    1、Headers(请求头):
    Content-Type:application/x-www-form-urlencoded
    Authorization:Your Authvalue
    X-API-UserId:Your User ID
    
    2、Body(信息体):
    grant_type=client_credentials
    
    3、Response Body:
    {
    	"Status": "200",
    	"access_token": "balabalabalabala",
    	"whatever": "whatever"
    }
    

    2、参数化获取Token的URL和Header
    上面的全是原始状态,如果有多套环境的话,也就很顺利就可以参数化了,不用创建多条请求。

    比如有QA/STG/PROD环境,那就有对应的域名/Authorization和UserId,接下来就在Environment里面创建对应的环境,然后环境之下创建对应的统一命名的域名/Authorization和UserId即可。
    比如下面是创建QA环境的参数
    在这里插入图片描述

    3、将返回的Token自动存储到对应的环境变量里面
    这里强调一下,演示的地方主要是针对每一个环境有自己对应的Authorization值和UserId,所以对应存储到环境。
    如果是所有环境都通用的变量,我们可以将其存储到全局(Globals)变量里面.
    在这里插入图片描述
    上面提到,返回的是JSON信息,那我们就可以在Tests模块编写脚本,在请求成功之后,获取到返回JSON内容里的access_token,然后set到环境变量Token里面。
    在这里插入图片描述

    //获取Response body
    var token = pm.response.json().access_token;
    //打印获取到的Token,目的是看我们是否取到值
    console.log(token);
    //将Token值 Set到环境变量里面,供后面的API调用
    pm.environment.set("access_token", token);
    

    4、Postman Tests
    Tests模块旁边有很多的样例,直接点击就会将脚本加载到Tests面板里面,很多都可以直接使用,或者稍作修改就可以直接使用,不能满足需求的可以去Postman官网查看语法,都是些Javascript脚本,很简单。
    比如下图:
    在这里插入图片描述

    展开全文
  • 来源:www.cnblogs.com/better-farther-world2099一、什么是JWTJson web token (JWT), 是为了在网络应用环境间传递声明而执行的一种...

    来源:www.cnblogs.com/better-farther-world2099

    一、什么是JWT

    Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).

    该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。

    JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。

    二、JWT的组成

    1、JWT生成编码后的样子

    eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.UQmqAUhUrpDVV2ST7mZKyLTomVfg7sYkEjmdDI5XF8Q
    

    2、JWT由三部分构成

    第一部分我们称它为头部(header),第二部分我们称其为载荷(payload, 类似于飞机上承载的物品),第三部分是签证(signature).

    header

    jwt的头部承载两部分信息:

    • 声明类型,这里是jwt

    • 声明加密的算法 通常直接使用 HMAC SHA256

    完整的头部就像下面这样的JSON:

    {
      'typ': 'JWT',
      'alg': 'HS256'
    }
    

    然后将头部进行base64加密(该加密是可以对称解密的),构成了第一部分

    eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9
    

    playload

    载荷就是存放有效信息的地方。这个名字像是特指飞机上承载的货品,这些有效信息包含三个部分

    • 标准中注册的声明

    • 公共的声明

    • 私有的声明

    标准中注册的声明 (建议但不强制使用) :

    • iss: jwt签发者

    • sub: jwt所面向的用户

    • aud: 接收jwt的一方

    • exp: jwt的过期时间,这个过期时间必须要大于签发时间

    • nbf: 定义在什么时间之前,该jwt都是不可用的.

    • iat: jwt的签发时间

    • jti: jwt的唯一身份标识,主要用来作为一次性token,从而回避重放攻击。

    公共的声明 :

    公共的声明可以添加任何的信息,一般添加用户的相关信息或其他业务需要的必要信息.但不建议添加敏感信息,因为该部分在客户端可解密.

    私有的声明 :

    私有声明是提供者和消费者所共同定义的声明,一般不建议存放敏感信息,因为base64是对称解密的,意味着该部分信息可以归类为明文信息。

    定义一个payload:

    {
      "sub": "1234567890",
      "name": "John Doe",
      "admin": true
    }
    

    然后将其进行base64加密,得到Jwt的第二部分

    eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9
    

    signature

    jwt的第三部分是一个签证信息,这个签证信息由三部分组成:

    • header (base64后的)

    • payload (base64后的)

    • secret

    这个部分需要base64加密后的header和base64加密后的payload使用.连接组成的字符串(头部在前),然后通过header中声明的加密方式进行加盐secret组合加密,然后就构成了jwt的第三部分。

    UQmqAUhUrpDVV2ST7mZKyLTomVfg7sYkEjmdDI5XF8Q
    

    密钥secret是保存在服务端的,服务端会根据这个密钥进行生成token和验证,所以需要保护好。

    3、签名的目的

    最后一步签名的过程,实际上是对头部以及载荷内容进行签名。一般而言,加密算法对于不同的输入产生的输出总是不一样的。对于两个不同的输入,产生同样的输出的概率极其地小(有可能比我成世界首富的概率还小)。所以,我们就把“不一样的输入产生不一样的输出”当做必然事件来看待吧。推荐:Java面试练题宝典

    所以,如果有人对头部以及载荷的内容解码之后进行修改,再进行编码的话,那么新的头部和载荷的签名和之前的签名就将是不一样的。而且,如果不知道服务器加密的时候用的密钥的话,得出来的签名也一定会是不一样的。

    服务器应用在接受到JWT后,会首先对头部和载荷的内容用同一算法再次签名。那么服务器应用是怎么知道我们用的是哪一种算法呢?别忘了,我们在JWT的头部中已经用alg字段指明了我们的加密算法了。

    如果服务器应用对头部和载荷再次以同样方法签名之后发现,自己计算出来的签名和接受到的签名不一样,那么就说明这个Token的内容被别人动过的,我们应该拒绝这个Token,返回一个HTTP 401 Unauthorized响应。

    注意:在JWT中,不应该在载荷里面加入任何敏感的数据,比如用户的密码。

    4、如何应用

    一般是在请求头里加入Authorization,并加上Bearer标注:

    fetch('api/user/1', {
      headers: {
        'Authorization': 'Bearer ' + token
      }
    })
    

    服务端会验证token,如果验证通过就会返回相应的资源。

    5、安全相关

    • 不应该在jwt的payload部分存放敏感信息,因为该部分是客户端可解密的部分。

    • 保护好secret私钥,该私钥非常重要。

    • 如果可以,请使用https协议

    6、对Token认证的五点认识

    • 一个Token就是一些信息的集合;

    • 在Token中包含足够多的信息,以便在后续请求中减少查询数据库的几率;

    • 服务端需要对cookie和HTTP Authrorization Header进行Token信息的检查;

    • 基于上一点,你可以用一套token认证代码来面对浏览器类客户端和非浏览器类客户端;

    • 因为token是被签名的,所以我们可以认为一个可以解码认证通过的token是由我们系统发放的,其中带的信息是合法有效的;

    三、传统的session认证

    我们知道,http协议本身是一种无状态的协议,而这就意味着如果用户向我们的应用提供了用户名和密码来进行用户认证,那么下一次请求时,用户还要再一次进行用户认证才行,因为根据http协议,我们并不能知道是哪个用户发出的请求,所以为了让我们的应用能识别是哪个用户发出的请求,我们只能在服务器存储一份用户登录的信息,这份登录信息会在响应时传递给浏览器,告诉其保存为cookie,以便下次请求时发送给我们的应用,这样我们的应用就能识别请求来自哪个用户了,这就是传统的基于session认证。

    但是这种基于session的认证使应用本身很难得到扩展,随着不同客户端用户的增加,独立的服务器已无法承载更多的用户,而这时候基于session认证应用的问题就会暴露出来。推荐:Java面试练题宝典

    基于session认证所显露的问题

    Session: 每个用户经过我们的应用认证之后,我们的应用都要在服务端做一次记录,以方便用户下次请求的鉴别,通常而言session都是保存在内存中,而随着认证用户的增多,服务端的开销会明显增大。

    扩展性: 用户认证之后,服务端做认证记录,如果认证的记录被保存在内存中的话,这意味着用户下次请求还必须要请求在这台服务器上,这样才能拿到授权的资源,这样在分布式的应用上,相应的限制了负载均衡器的能力。这也意味着限制了应用的扩展能力。

    CSRF: 因为是基于cookie来进行用户识别的, cookie如果被截获,用户就会很容易受到跨站请求伪造的攻击。

    基于token的鉴权机制

    基于token的鉴权机制类似于http协议也是无状态的,它不需要在服务端去保留用户的认证信息或者会话信息。这就意味着基于token认证机制的应用不需要去考虑用户在哪一台服务器登录了,这就为应用的扩展提供了便利。

    流程上是这样的:

    • 用户使用用户名密码来请求服务器

    • 服务器进行验证用户的信息

    • 服务器通过验证发送给用户一个token

    • 客户端存储token,并在每次请求时附送上这个token值

    • 服务端验证token值,并返回数据

    这个token必须要在每次请求时传递给服务端,它应该保存在请求头里, 另外,服务端要支持CORS(跨来源资源共享)策略,一般我们在服务端这么做就可以了 Access-Control-Allow-Origin:*。推荐:Java面试练题宝典

    四、token的优点

    • 支持跨域访问: Cookie是不允许垮域访问的,这一点对Token机制是不存在的,前提是传输的用户认证信息通过HTTP头传输。

    • 无状态(也称:服务端可扩展行):Token机制在服务端不需要存储session信息,因为Token 自身包含了所有登录用户的信息,只需要在客户端的cookie或本地介质存储状态信息。

    • 更适用CDN: 可以通过内容分发网络请求你服务端的所有资料(如:javascript,HTML,图片等),而你的服务端只要提供API即可。

    • 去耦: 不需要绑定到一个特定的身份验证方案。Token可以在任何地方生成,只要在你的API被调用的时候,你可以进行Token生成调用即可。

    • 更适用于移动应用: 当你的客户端是一个原生平台(iOS, Android,Windows 8等)时,Cookie是不被支持的(你需要通过Cookie容器进行处理),这时采用Token认证机制就会简单得多。

    • CSRF:因为不再依赖于Cookie,所以你就不需要考虑对CSRF(跨站请求伪造)的防范。

    • 性能: 一次网络往返时间(通过数据库查询session信息)总比做一次HMACSHA256计算 的Token验证和解析要费时得多。

    • 不需要为登录页面做特殊处理: 如果你使用Protractor 做功能测试的时候,不再需要为登录页面做特殊处理。

    • 基于标准化:你的API可以采用标准化的 JSON Web Token (JWT). 这个标准已经存在多个后端库(.NET, Ruby, Java,Python, PHP)和多家公司的支持(如:Firebase,Google, Microsoft)。

    • 因为json的通用性,所以JWT是可以进行跨语言支持的,像JAVA,JavaScript,NodeJS,PHP等很多语言都可以使用。

    • 因为有了payload部分,所以JWT可以在自身存储一些其他业务逻辑所必要的非敏感信息。

    • 便于传输,jwt的构成非常简单,字节占用很小,所以它是非常便于传输的。

    • 它不需要在服务端保存会话信息, 所以它易于应用的扩展。

    五、JWT的JAVA实现

    Java中对JWT的支持可以考虑使用JJWT开源库;JJWT实现了JWT, JWS, JWE 和 JWA RFC规范;

    下面将简单举例说明其使用:

    1、生成Token码

    import javax.crypto.spec.SecretKeySpec;
    import javax.xml.bind.DatatypeConverter;
    import java.security.Key;
    import io.jsonwebtoken.*;
    import java.util.Date;    
     
    //Sample method to construct a JWT
     
    private String createJWT(String id, String issuer, String subject, long ttlMillis) {
     
    //The JWT signature algorithm we will be using to sign the token
    SignatureAlgorithm signatureAlgorithm = SignatureAlgorithm.HS256;
     
    long nowMillis = System.currentTimeMillis();
    Date now = new Date(nowMillis);
     
    //We will sign our JWT with our ApiKey secret
    byte[] apiKeySecretBytes = DatatypeConverter.parseBase64Binary(apiKey.getSecret());
    Key signingKey = new SecretKeySpec(apiKeySecretBytes, signatureAlgorithm.getJcaName());
     
      //Let's set the JWT Claims
    JwtBuilder builder = Jwts.builder().setId(id)
                                    .setIssuedAt(now)
                                    .setSubject(subject)
                                    .setIssuer(issuer)
                                    .signWith(signatureAlgorithm, signingKey);
     
    //if it has been specified, let's add the expiration
    if (ttlMillis >= 0) {
        long expMillis = nowMillis + ttlMillis;
        Date exp = new Date(expMillis);
        builder.setExpiration(exp);
    }
     
    //Builds the JWT and serializes it to a compact, URL-safe string
    return builder.compact();
    }
    

    2、解码和验证Token码

    import javax.xml.bind.DatatypeConverter;
    import io.jsonwebtoken.Jwts;
    import io.jsonwebtoken.Claims;
     
    //Sample method to validate and read the JWT
    private void parseJWT(String jwt) {
    //This line will throw an exception if it is not a signed JWS (as expected)
    Claims claims = Jwts.parser()        
       .setSigningKey(DatatypeConverter.parseBase64Binary(apiKey.getSecret()))
       .parseClaimsJws(jwt).getBody();
    System.out.println("ID: " + claims.getId());
    System.out.println("Subject: " + claims.getSubject());
    System.out.println("Issuer: " + claims.getIssuer());
    System.out.println("Expiration: " + claims.getExpiration());
    }
    

    文章整理自:

    • https://blog.csdn.net/buyaoshuohua1/article/details/73739419

    • https://www.cnblogs.com/xiekeli/p/5607107.html#top

    • https://blog.csdn.net/SoftwareOscar/article/details/78538346

    • https://blog.csdn.net/Jack__Frost/article/details/64964208

    • http://blog.leapoahead.com/2015/09/06/understanding-jwt/

    推荐好文
    
    强大,10k+点赞的 SpringBoot 后台管理系统竟然出了详细教程!
    
    分享一套基于SpringBoot和Vue的企业级中后台开源项目,代码很规范!
    能挣钱的,开源 SpringBoot 商城系统,功能超全,超漂亮!
    
    
    
    
    展开全文
  • 前后端分离中的无痛刷新token机制

    千次阅读 2021-01-14 12:23:41
    今天我们来说一说前后端分离中的无痛刷新token机制,在手机app中应该经常用到,大家都知道在前后端是以token的形式交互,既然是token,那么肯定有它的过期时间,没有一个token是永久的,永久的token就相当于一串永久...
  • Flutter中基于Dio实现Token Refresh

    千次阅读 2021-11-23 11:46:54
    Flutter中基于Dio实现Token Refresh 1. 背景介绍 目前项目在采用Flutter开发一款App,该工程中采用Dio框架作为网络请求框架,用户登录方面采用 OAuth2 协议。众所周知, OAuth2 协议中是用户初次登录时获取 access_...
  • GitHub源码地址:...封装JTW生成token和校验方法public class JwtTokenUtil {//公用密钥-保存在服务端,客户端是不会知道密钥的,以防被攻击public static String SECRET = "ThisIsASecret";//生成Trokepu...
  • 使用场景现在很多基于restful的api接口都有个登录的设计,也就是在发起正式的请求之前先通过一个登录的请求接口,申请一个叫做token的东西。申请成功后,后面其他的支付请求都要带上这个token,服务端通过这个token...
  • 本文将介绍基于 SpringBoot 和 Vue 的前后端分离项目集成 JWT 的一种思路,此外还包括在包括记住密码功能情况下 Token 的刷新策略,本文假设你对以下知识有一定的了解,如果未接触过,建议先看一下推荐链接的内容: ...
  • 但后面发现测试用例会有如下场景: 租户的token、用户的token、项目级别的token、**权限的token 如果都在setup中定义的话,需要定义这么多的token变量,而且不同的case类的setup都需要定义这么多token变量 问题...
  • JWT生成token概要: 概要: JWT意思是Json web token,通过POST参数或者在HTTP header发送,然后进行验证,验证通过之后,就能返回响应的资源给浏览器。 通常和权限框架(如shiro)搭配使用 1.为什么使用JWT? 1....
  • } 测试结果: 小爱 18 token过期时间:Mon Apr 19 16:01:28 CST 2021 //时间因为博主不是截的第一次运行的实时间所以不准确 拿到的token:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2MTg4MTkzMjAsInVzZXJhZ2...
  • Jmeter获取登录接口的token,用于下个接口
  • 对于一个项目,有人给了我这个我在Postman中用于测试目的的数据:在Postman中,这非常有效.我只需要取回访问令牌.有一次,我得到了访问令牌,我可以继续.我已经尝试了几个Python包和一些自定义代码,但不知怎的,这个看似...
  • 来源:http://www.zcphp.com/html/weixinkaifa-show-20.html官方的说明:access_...access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。众所周知,在微信开发中access_toke...
  • 测试同学的不断测试下,发现问题出在了前端的一个提交按钮上,有的用户比较“着急”,提交订单时候,一下子快速的点了5、6次(这手速没有几年是练不出来的,咳咳),导致请求一下子都涌进来,后端进行了重复处理。...
  • 1、Token介绍(摘取自官方网站) 官方网站:JSON Web Token Introduction - jwt.io 1)token可以做权限的验证和信息的交换 2)token主要有三部分组成 分别是Header、Payload、Signature。 编码之后token...
  • CSS注入窃取token

    2021-01-27 12:25:14
    窃取input标签中的token 假设我们有一个php页面 <?php $token1 = md5($_SERVER['HTTP_USER_AGENT']); $token2 = md5($token1); ?> <!doctype html><meta charset=utf-8> <input ty...
  • 1.声明FeignClient 指定url ... * DESC:feign方式 测试Deom */ @FeignClient(name = "testService", url = "http://10.87.132.234:8088") public interface FeignTest { /** * 通过feign调用接口 * @param map *.
  • 微信token认证程序

    2021-03-22 20:49:48
    //这里是测试网站配置信息和开发的是否一致。 $wechatObj->responseMsg();//新增加这一项,目的是调用responseMsg()这个功能。 class wechatCallbackapiTest { //若确认此次GET请求来自微信服务器,请原样返回...
  • 有些登录不是用 cookie 来验证的,是用 token 参数来判断是否登录。token 传参有两种一种是放在请求头里,本质上是跟 cookie 是一样的,只 是换个单词而已;另外一种是在 url 请求参数里,这种更直观。 登录返回...
  • uniapp 封装请求,实现无痛刷新token

    千次阅读 2021-01-13 15:29:24
    //随图片一同上传的文字信息 let formData={ title:'上传测试', content:'为了说明formData就是普通的对象' } //上传 uploadInfo(imgs,formData).then(res => { if (res.statusCode === 200) { console.log('上传...
  • 使用Token目的 Token目的是为了减轻服务器的压力,减少频繁的查询数据库,使服务器更加健壮。 四、富文本 ↓作者:花开兮缓归 ↓链接:https://www.jianshu.com/p/99b944dae4c3 ↓来源:简书 ↓著作权归作者...
  • 一、用以太坊批量转账的目的: 在转账ETH的时候,可以节约gas,也就是节约ETH 批量转ETH,节省人工时间,不必一个一个账号的输入。 二、批量转账用在的地方: 1. ERC20 token 代币的 多账户转到一个账户,批量...
  • 简介在django中我们需要在templates的form中加入{%csrf_token%}这串内容,它的作用是当我们get表单页面时,服务器返回页面的同时也会向前端返回一串随机字符,post提交时服务器会验证这串字符来确保用户是在服务端...
  • 那么接下来就集成呗,照着文档完毕后在控制台果然看到了梦寐以求的device token ,然后再去根据 clientId 查询厂商token,果然有值,需要注意的是离线的测试必须是官方支持的主流机型(前面配置过的机型),华为的...
  • 1 APP测试基本流程 1.1预估测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两周(即10个工作日,一人份工作量),根据项目情况以及版本质量可适当缩短或延长测试时间。正式测试前先向主管...
  • 实际的工作场景中,有很多接口之间是有依赖关系的,这里列举两个最简单的例子,cookie和token。话不多说,上代码,因为也比较简单,就没写注释。 import requests def token_login(): url = "这里面是返回token的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,756
精华内容 14,302
关键字:

token测试的目的