当前位置:网站首页>Yaml数据驱动演示

Yaml数据驱动演示

2022-06-21 16:00:00 爆肝拳专业户

目录:
在这里插入图片描述
test_api.yaml:

#用例1--正例
-
  name: 获得token鉴权码的接口
  request:
    url: https://api.weixin.qq.com/cgi-bin/token
    method: get
    headers:
      Content-Type: application/json
    params:
      grant_type: client_credential
      appid: wx6b11b3efd1cdc290
      secret: 106a9c6157c4db5f6029918738f9529d
  validate:
    - eq: {
    expires_in: 7200}

#用例2--反例
-
  name: 获得token鉴权码的接口
  request:
    url: https://api.weixin.qq.com/cgi-bin/token
    method: get
    headers:
      Content-Type: application/json
    params:
      grant_type: client_credential
      
      secret: 106a9c6157c4db5f6029918738f9529d
  validate:
    - eq: {
    expires_in: 7200}

yaml_util.py:

import pytest
import yaml


class YamlUtil:
    def __init__(self,yaml_file):
        self.yaml_file=yaml_file

    def read_yaml(self):
        with open(self.yaml_file,encoding='utf-8') as f:
            value=yaml.load(f,Loader=yaml.FullLoader)
            return value

test_api.py:

import os

import pytest
import requests

from testcase.yaml_util import YamlUtil


class TestApi:

    @pytest.mark.parametrize('args',YamlUtil(os.getcwd()+'/testcase/test_api.yaml').read_yaml())
    def test_01_baili(self,args):
        url=args['request']['url']
        params=args['request']['params']
        res=requests.get(url,params)
        print(res.text)

pytest.ini:

[pytest]

addopts=-vs  --alluredir  ./temp
testpaths=./testcase
python_files=test_*.py
python_classes=Test*
python_functions=test

all.py:

import os

import pytest


if __name__ == '__main__':
    pytest.main()
    os.system('allure generate ./temp -o ./report --clean')

测试报告:
在这里插入图片描述

原网站

版权声明
本文为[爆肝拳专业户]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_45981384/article/details/118737867