python接口自动化测试框架搭建入门-03-post请求demo-优化

总体思路:

1、创建文件,postHttpDemo.py

2、调用已经封装好的comon公共文件中的post请求方法,发起post请求

3、继承unittest.TestCase类,添加响应断言,判断测试预期结果

4、使用try except对异常进行捕获

5、调用common公共文件中封版的日志记录类方法,在指定目录位置打印接口请求响应日志

代码如下:

import os
import config
import unittest

#导入另一个common目录下的common.py文件,被引入的common文件目录下需要增加初始化文件__init__.py,设置根目录为源根root
from common import common
from common.common import post_log
from common.common import testData

class postHttpDemo(unittest.TestCase):
    def postHttpRequest(self):
        # 定义Post请求参数
        postParam = 'api/users'
        headers = {'content-type': "application/json"}
        payload = {
            "name": "john",
            "job": "leader"
        }
        # 调用getFileName方法获取当前文件名
        fileName = postHttpDemo.getFileName(self)

        try:
            #调用http_post_param获取post请求的url
            baseUrl = config.http_post_param(self)
            basePostParam = baseUrl + postParam
            # 调用封装的http_post_method方法发起post请求
            test_post = common.test_http()
            resStatusCode,resContent = test_post.http_post_method(basePostParam,headers,payload,fileName)
            #调用test_data_response方法获取响应内容
            message = testData.test_data_response(self, resContent, 'name')
            # 继承unitest.TestCase父类,添加断言响应
            testStatusCode = self.assertEqual(resStatusCode,201)
            testName = self.assertEqual(message,'john')
            if testStatusCode == None and testName == None:
                post_log.info('测试通过'  + '\n')
            else:
                post_log.info('测试不通过'  + '\n')
        except BaseException as e:
                post_log.error('测试案例执行失败',exc_info = True)
                raise

    def getFileName(self):
        # 获取当前文件的文件名称
        fileName = os.path.basename(__file__)
        return fileName

postRun = postHttpDemo()
postRun.postHttpRequest()

本人也是在学习研究中,欢迎各位同学指导、探讨。遵从本心、无问东西!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值