Postman接口用例转化为Python自动化测试用例

发表于:2019-11-15 14:01

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:雷子V    来源:雷子说测试

  很多人可能会用postman,python,但是不会写测试脚本,想要快速写python自动化测试的脚本, postman里面有完成的用例。可是不会写python脚本,想要转化,本次呢,我就将postman复制code到python代码里面,需要的步骤。给大家讲解一下。
  首先我们去打开postman,我们可以将我们写好的用例呢,导出成python代码,
  示例用的图灵接口:
  那么我们有了这条postman用例,我们点击Code,
  选择要导出的语言,这里我选择的是python,选择requests库去导出代码
  那么我们看看生成的代码,
    import requests
  url = "http://openapi.tuling123.com/openapi/api/v2"
  payload = "{\r\n\t\r\n    \"userInfo\": {\r\n        \"apiKey\": \"\",\r\n        \"userId\": \"\"\r\n    }\r\n}"
  headers = {
  'Content-Type': "application/json",
  'User-Agent': "PostmanRuntime/7.19.0",
  'Accept': "*/*",
  'Cache-Control': "no-cache",
  'Postman-Token': "25132ec6-9d02-421c-ab22-773b1fd70035,65c29f56-030a-4d3d-862f-ad0de3ed50a6",
  'Host': "openapi.tuling123.com",
  'Accept-Encoding': "gzip, deflate",
  'Content-Length': "78",
  'Connection': "keep-alive",
  'cache-control': "no-cache"
  }
  response = requests.request("POST", url, data=payload, headers=headers)
  print(response.text)
  我们将代码复制到编辑器中,
  如果没有reuqests库,可能会报错,我们需要安装reuqests库。
  命令:
 pip install reuqests
  那么我们去运行一下。
  我们看下执行结果,
  这里缺少断言,我们去增加我们断言就好。
  我们的断言是假设 里面有code字段就认为成功了。
  运行代码
  我们这样 就是一个简单的测试脚本。
  有人会问,怎么转成unittest测试用例呢。
  我们先去引入unittest
  然后去定义一个测试类继承unittest.TestCase
  去写测试用例
   import requests
  import unittest
  class Testcase(unittest.TestCase):
  def tearDown(self) -> None:
  pass
  def setUp(self) -> None:
  pass
  def testone(self):
  url = "http://openapi.tuling123.com/openapi/api/v2"
  payload = "{\r\n\t\r\n    \"userInfo\": {\r\n        \"apiKey\": \"\",\r\n        \"userId\": \"\"\r\n    }\r\n}"
  headers = {
  'Content-Type': "application/json",
  'User-Agent': "PostmanRuntime/7.19.0",
  'Accept': "*/*",
  'Cache-Control': "no-cache",
  'Postman-Token': "25132ec6-9d02-421c-ab22-773b1fd70035,65c29f56-030a-4d3d-862f-ad0de3ed50a6",
  'Host': "openapi.tuling123.com",
  'Accept-Encoding': "gzip, deflate",
  'Content-Length': "78",
  'Connection': "keep-alive",
  'cache-control': "no-cache"
  }
  response = requests.request("POST", url, data=payload, headers=headers)
  self.assertTrue("code" in response.text)
  if __name__=="__main__":
  unittest.main()
  接下来我们去执行这个测试用例。
  这样 我们就直接把postman里面的一个用例到到python形成一个自动化测试用例。然而这只是一个开始。

      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号