pytest接口自动化测试框架 | pytest结合二次封装实现接口自动化

视频来源:B站《冒死上传!pytest接口自动化测试框架(基础理论到项目实战及二次开发)教学视频【软件测试】》

一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!

附上汇总贴:pytest接口自动化测试框架 | 汇总_COCOgsta的博客-CSDN博客


test_py.py

import configparser

import pytest

from test2 import HttpClient


class TestCase:
    # 全局变量 类变量 公共变量 都可以使用
    token = None
    httpclient = None
    url = None

    # 接口的地址放在 外层 用例执行之前 先拿到接口的项目信息 接口地址
    # 读取ini文件中的数据
    @classmethod
    def setup_class(cls):
        TestCase.httpclient = HttpClient()
        # configparser文件对象
        config = configparser.ConfigParser()
        # 读取哪个文件
        config.read('env.ini', encoding='utf-8')
        TestCase.url = config.get('apidemo01', 'URL')



    @classmethod
    def teardown_class(cls):
        pass

    # 登录
    def test_login(self):

        # 登录接口 url+/api/login
        url = TestCase.url + '/api/login'
        data = {"password": "123456", "username": "admin"}
        res = TestCase.httpclient.send_request(method='post', url=url, param_type='json', data=data)
        print(res.json())
        TestCase.token = res.json()['token']

    # 个人信息查询 下划线报错
    # 函数与函数支架的变量是不能够互相去使用 全局变量、类变量
    def test_userinfo(self):
        url = TestCase.url + '/api/getuserinfo'
        header = {'token': TestCase.token}
        res = TestCase.httpclient.send_request(method='get', url=url, param_type='json', headers=header)
        print(res.json())


if __name__ == '__main__':
    pytest.main(['test_py.py', '-sv'])

# pytest实现关联 通过类变量去实现的
# setupclass所有用例执行之前要做的事情

env.ini

[apidemo01]
URL = http://39.98.138.157:5000
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值