加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

Python接口测试自动化实战及代码示例:含Get、Post等方法

发布时间:2019-07-18 13:37:37 所属栏目:建站 来源:Atstudy网校
导读:年头参加到一个靠山体系开拓的项目中,内里涉及了许多接口,我做为项目组测试职员,必要对这些接口举办测试,一开始行使 postman 器材测试,极端利便。但跟着接口数目的增进,不仅要执行手动点击测试,并且,一旦接口参数变换,都从头变动接口参数,次数多

上述代码中,我们对两个接口举办了函数封装,两个接口之间有依靠相关,oauth2_basic()函数在哀求之前必需先去哀求 register()函数获取数据。对付这种多接口测试,且接口之间存在相互挪用的环境,最好是在挪用该接口前时,将相互之间有依靠的接口封装进该接口中,担保接口挪用逻辑同等。其次再针对该接口的其余参数计划测试用例去测试该接口。

5、https 协议哀求

前面我们说起的接口测试,仅是关于哀求 http 协议的。然而,http 协议在传输进程中并不安详,通过该协议传输内容轻易被截取,由此人们提出了 https 协议。该协议在原先的 http 协议之外,对传输进程中的内容举办了加密处理赏罚,这样就能确保信息在传输进程中的安详。今朝许多公司的会见 url 都已转换到 https 协议。因此在接口测试中也要思量到对 https 协议会见的支持。今朝对付 https 协议会见的处理赏罚有以下几种方案。

第一种,对付一样平常网站会见,无法得到支持 https 协议的证书信息,因此只能选择忽略 ssl 校验;

第二种,对付外部收集会见公司内容收集和内容来说,除了要颠末防火墙外,会见详细营业要颠末负载平衡器。而负载平衡器一样平常要求支持 https 协议,这个时辰就必要行使 Python 中的 ssl 模块对质书举办校验;

关于忽略会见 https 协议的证书校验,这里忽略不表。重点讲授 https 协议证书的校验。在 Python 中,提供了 ssl 模块,用于对 https 协议证书的认证。这里以一段代码来展示该模块的应用。

  1. import ssl 
  2.  
  3. cont = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 
  4.  
  5. cont.check_hostname = False 
  6.  
  7. cont.load_cert_chain(certfile=public_key, keyfile=private_key) 
  8.  
  9. cont.verify_mode = 2 
  10.  
  11. cont.load_verify_locations(ca_key) 

上述代码中天赋生 ssl 上下文工具 cont,接下来用这个上下文工具 cont 依次举办域名校验、证书导入、验证模式选择及 CA 证书验证。cont.checkhostname 用于域名校验,值为 True 暗示举办主机名校验,值为 False 暗示不举办主机名校验。

cont.loadcertchain(certfile=publickey, keyfile=privatekey),certfile 暗示导入公钥证书,keyfile 暗示导入私钥证书。一样平常环境下,Python 支持的 certfile 证书文件后缀为.crt,keyfile 证书文件后缀为.pem。cont.verifymode 为验证模式,值为 0 暗示不做证书校验,值为 1 暗示代表可选,值为 2 暗示做证书校验。cont.loadverifylocations(ca_key)暗示导入CA 证书。一样平常的证书校验都要颠末上述这几个步调。此时 ssl 证书的根基设置已完成。接下来就必要在发送 https 哀求时插手证书验证环节,示例代码如下:

  1. req = request.Request(url=url, data=para, headers=headers, method='GET') 
  2.  
  3. response = request.urlopen(req, context=self.context) 

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读