总体思路:
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()
本人也是在学习研究中,欢迎各位同学指导、探讨。遵从本心、无问东西!