http_request的类的单元测试

题目:1)针对YAPI网址写的http_request类做作业
2)提供2个接口:登陆和查询tools
3)针对登陆接口写4个用例:正常登陆,不输入密码,不输入账号,输入错误的密码
4)请利用任何一种方法实现用例的加载并执行
5)生成html的测试报告
注意:请在测试类里加上异常处理以及断言

http_request.py

import requests
import json
class HttpRequest:
    """利用request封装get请求和post请求
   """
    def http_request(self, url, method, header=None, params=None, cookie=None):

        """url:请求的地址http://XXX:port
          :param:传递的参数 非必填参数 字典的格式传递参数
          method:请求方法,支持post和get
          cookie:请求的时候传递的cookie值"""
        if method=='get':
            res = requests.get(url,headers=header,data=params,cookies=cookie,verify=False)
        else:
            res = requests.post(url,headers=header,data=params,cookies=cookie,verify=False)
        return res #返回一个消息实体


if __name__=='__main__':
    login_url = '********'
    params = {
   "email": "********","password": "********"}
    header = {
   'Content-Type': 'application/json; charset=utf-8'}
    res=HttpRequest().http_request(login_url,'post',header,json.dumps(params))
    # print(json.dumps(payload))##<class 'str'>
    # print(payload)#<class 'dict'>
    print("登陆结果是:",res.text)
    # print(type(res.json()['errmsg']))#<class 'str'>
    # print(type(res.json()['errcode']))#<class 'int'>
    # 查询分类
    params_fenlei={
   'group_id':'207','page': '1','limit': '10'}
    fenlei_url ='********'
    chaxun_res=HttpRequest().http_request(fenlei_url,'get',params_fenlei,cookie=res.cookies)
    print(type(json.dumps(params_fenlei)))
    print("查询结果是:",chaxun_res.text)
HttpRequest()

用例的代码:
request_case.py

import unittest
from  auto_study.API_AUTO.Tools.http_request import HttpRequest
class api_login(unittest.TestCase):#登陆接口的用例
    def setUp(self):
        #登陆
        self.login_url = '********'
        self.login_data = {
   "email": "********","password": "********"}
        #查看详情的网址
        self.fenlei_url= '********'
        #登陆后的cookies
        self.cookies=HttpRequest().http_request(self.login_url,'post',params=self.login_data).cookies
        print("登陆后产生的cookie是:{}".format(self.cookies))

    def test_normal_login(self):#输入正确的用户
        res=HttpRequest().http_request(self.login_url,'post',params=self.login_data)
        print(res.status_code)
        print(res.text)
    def test_no_password(self):#不输入密码
        data = 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值