zoukankan      html  css  js  c++  java
  • Python基础测试有关联的接口

    test_guanlian.py放在case文件夹下

    test_guanlian.pyimport unittest

    import requests
    from urllib.parse import urljoin

    class TestChoice(unittest.TestCase):
    base_url = 'http://abc.cn/'
    def login(self):
    uri = '/abd/login'
    url = urljoin(self.base_url,uri)
    data = {'username':'username','passwd':'111111'}
    print('开始登录',data)
    response = requests.post(url,data).json()
    print('调用登录接口结束,返回结果',response)
    self.assertIsNotNone(response.get('login_info'),'登录失败')
    #校验非空
    session_id = response['login_info']['sign']
    user_id = response['login_info']['userId']
    return session_id,user_id

    def choice(self,session_id,user_id):
    uri = '/abd/choice'
    url = urljoin(self.base_url,uri)
    data = {'userid':user_id,'sign':session_id}
    print('抽奖接口开始=====',data)
    response = requests.get(url,params=data).json()
    print('抽奖接口结束=======',response)
    self.assertIsNotNone(response.get('product_info'),'抽奖失败')


    def add_product(self,session_id,user_id):
    uri = '/abd/add'
    url = urljoin(self.base_url,uri)
    data = {'userid':user_id,'sign':session_id,'name':'iphoneXs max'}
    files = {'file':open(r'/Downloads/aaa.jpg','rb')}
    response = requests.post(url,data,files=files).json()
    self.assertEqual('添加成功',response.get('msg'))

    def test_login_choice(self):
    '''测试抽奖流程的,先登录后抽奖'''
    session_id,user_id = self.login()
    self.choice(session_id,user_id)

    def test_login(self):
    '''测试登录的'''
    self.login()

    def test_add_product(self):
    '''测试添加商品的'''
    session_id,user_id = self.login()
    self.add_product(session_id,user_id)

    start.py 放在与case文件夹同级目录下

     
    import BeautifulReportimport unittest

    test=unittest.defaultTestLoader.discover('case','test*.py')
    # print(test)
    runner = BeautifulReport.BeautifulReport(test)
    runner.report('接口测试','interface.html')
  • 相关阅读:
    Android Animations动画使用详解
    android LinearLayout和RelativeLayout实现精确布局
    中国天气网API
    获取中央气象台API 完整城市列表简单方式
    Django框架 连接Oracle -ServerName方式报错
    关于java的动态代理
    Mybatis缓存
    Git使用,将本地项目推送到GitHub上
    使用doxc4j将word转pdf遇到的一个问题
    linux安装jdk
  • 原文地址:https://www.cnblogs.com/yulinlincoding/p/10771503.html
Copyright © 2011-2022 走看看