午夜视频免费看_日韩三级电影网站_国产精品久久一级_亚洲一级在线播放_人妻体内射精一区二区三区_91夜夜揉人人捏人人添红杏_91福利在线导航_国产又粗又猛又黄又爽无遮挡_欧美日韩一区在线播放_中文字幕一区二区三区四区不卡 _日日夜夜精品视频免费观看_欧美韩日一区二区三区

主頁 > 知識庫 > Pytest接口自動化測試框架搭建模板

Pytest接口自動化測試框架搭建模板

熱門標簽:江蘇客服外呼系統(tǒng)廠家 清遠360地圖標注方法 平頂山外呼系統(tǒng)免費 西藏智能外呼系統(tǒng)五星服務 原裝電話機器人 400電話申請服務商選什么 工廠智能電話機器人 在哪里辦理400電話號碼 千陽自動外呼系統(tǒng)

auto_api_test

開發(fā)環(huán)境: Pycharm

開發(fā)語言版本: python3.7.8

測試框架: Pytest、測試報告: Allure

項目源碼Git地址

項目目錄結構

  • api – 模仿PO模式, 抽象出頁面類, 頁面類內(nèi)包含頁面所包含所有接口, 并封裝成方法可供其他模塊直接調(diào)用
  • config – 配置文件目錄
  • data – 測試數(shù)據(jù)目錄
  • doc – 文檔存放目錄
  • log – 日志
  • report – 測試報告
  • scripts – 測試腳本存放目錄
  • tools – 工具類目錄
  • .gitignore – git忽略
  • app.py – 命令行啟動入口
  • pytest.ini – pytest測試框架配置文件
  • README.md – 開發(fā)說明文檔

代碼分析

pytest.ini

pytest框架的配置文件

[pytest]
addopts = --html=../report/report.html  # pytest-html報告插件配置 
;addopts = -s --alluredir report  # allure-pytest報告插件配置
testpaths = ./scripts  # 設置用例目錄識別名稱
python_files = test*_*.py  # 設置測試文件識別名稱
python_classes = Test*  # 設置測試類識別名稱
python_functions = test_*  # 設置測試方法識別名稱

app.py

# 基礎路由(方便在部署環(huán)境發(fā)生變化時切換全局基礎路由)
BASE_URL = "http://xxxx.com"
# 獲取腳本的絕對路徑(腳本在項目根目錄就可以理解為項目路徑)
ABS_PATH = os.path.abspath(__file__)
BASE_DIR = os.path.dirname(ABS_PATH)

# 命令行啟動此腳本時執(zhí)行測試用例
pytest.main(["scripts/"])

/config/config.json

配置文件, 目前包含全局請求頭配置、類似全局變量的設置, 可通過tools內(nèi)的工具函數(shù)進行讀寫
請求頭具體參數(shù)根據(jù)需要自行配置

{
 "headers": {
  "Host": "xxx.com",
  "Connection": "keep-alive",
  "Accept": "application/json, text/plain, */*",
  "Authorization": "xxxx",
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36",
  "Content-Type": "application/json;charset=UTF-8",
  "Origin": "http://xxx.com",
  "Referer": "http://xxx.com/",
  "Accept-Encoding": "gzip, deflate",
  "Accept-Language": "zh-CN,zh;q=0.9"
 }
}

/api/template_api.py

頁面類模板, 包含頁面接口的請求方法(增刪改查)封裝, 主要在此定義好接口和請求入?yún)⒌葍?nèi)容

# 導包
import app
import json
from tools.config_info import get_header


class TemplateAPI:
  # xx添加接口
  api_add_url = app.BASE_URL + "/xxx/xxxx/add"
  # xx修改接口
  api_upd_url = app.BASE_URL + "/xxx/xxxx/upd"
  # xx查詢接口
  api_get_url = app.BASE_URL + "/xxx/xxxx/get"
  # xx刪除接口
  api_del_url = app.BASE_URL + "/xxx/xxxx/del/{id}"

  # xx添加接口函數(shù)實現(xiàn)
  def api_add(self, session, attr1, attr2):
    post_data = {
      "attr1": attr1,
      "attr2": attr2
    }
    return session.post(self.api_add_url, headers=get_header(), data=json.dumps(post_data))

  # xx修改接口函數(shù)實現(xiàn)
  def api_upd(self, session, attr1, attr2):
    put_data = {
      "attr1": attr1,
      "attr2": attr2
    }
    return session.put(self.api_upd_url, headers=get_header(), data=json.dumps(put_data))

  # xx查詢接口函數(shù)實現(xiàn)
  def api_get(self, session, attr1, attr2):
    params = {
      "attr1": attr1,
      "attr2": attr2
    }
    return session.get(self.api_get_url, headers=get_header(), params=params)

  # xx刪除接口函數(shù)實現(xiàn)
  def api_del(self, session, uid):
    return session.delete(self.api_del_url.format(id=uid), headers=get_header())

/scripts/test_template.py

測試類以Test開頭, 測試類和測試方法添加allure裝飾器

前置測試類方法 - 初始化requests請求庫的session對象, 創(chuàng)建對應的頁面對象

后置測試類方法 - 關閉session對象

前置測試方法 - 加休眠

測試方法中添加可選參數(shù)化裝飾器, 測試方法中通過頁面對象調(diào)用頁面接口請求方法, 傳入requests的session對象和方法需要的必要參數(shù), 進行響應結果的處理和斷言等操作

日志器可通過引入工具調(diào)用

# 導包
import pytest
import requests
from time import sleep
from api.template_api import TemplateAPI
from tools.get_log import GetLog
from tools.read_file import read_json
import allure

# 獲取日志器
log = GetLog.get_log()


@allure.feature('測試類模板')
class TestTemplate:
  session = None

  # 初始化方法
  @classmethod
  def setup_class(cls):
    cls.session = requests.Session()  # 初始化session對象
    cls.template = TemplateAPI()

  # 結束方法
  @classmethod
  def teardown_class(cls):
    cls.session.close()

  @classmethod
  def setup(cls):
    sleep(1.5)

  # 測試方法
  @allure.story("測試方法模板-add")
  @pytest.mark.parametrize(("attr1", "attr2", "success", "expect"), read_json("test_add"))
  def test_add(self, attr1, attr2, success, expect):
    # 添加功能API調(diào)用
    response = self.template.api_add(self.session, attr1, attr2)
    # 打印日志
    log.info("添加功能-狀態(tài)碼為: {}".format(response.status_code))
    # 斷言狀態(tài)碼
    assert response.status_code == expect, "狀態(tài)碼斷言失敗"

  @allure.story("測試方法模板-upd")
  @pytest.mark.parametrize(("attr1", "attr2", "success", "expect"), read_json("test_upd"))
  def test_upd(self, attr1, attr2, success, expect):
    # 添加功能API調(diào)用
    response = self.template.api_upd(self.session, attr1, attr2)
    # 打印日志
    log.info("修改功能-狀態(tài)碼為: {}".format(response.status_code))
    # 斷言狀態(tài)碼
    assert response.status_code == expect, "狀態(tài)碼斷言失敗"

  @allure.story("測試方法模板-get")
  @pytest.mark.parametrize(("attr1", "attr2", "success", "expect"), read_json("test_get"))
  def test_get(self, attr1, attr2, success, expect):
    # 添加功能API調(diào)用
    response = self.template.api_get(self.session, attr1, attr2)
    # 打印日志
    log.info("查詢功能-狀態(tài)碼為: {}".format(response.status_code))
    # 斷言狀態(tài)碼
    assert response.status_code == expect, "狀態(tài)碼斷言失敗"

  @allure.story("測試方法模板-del")
  @pytest.mark.parametrize(("uid", "success", "expect"), read_json("test_del"))
  def test_del(self, uid, success, expect):
    # 添加功能API調(diào)用
    response = self.template.api_del(self.session, uid)
    # 打印日志
    log.info("刪除功能-狀態(tài)碼為: {}".format(response.status_code))
    # 斷言狀態(tài)碼
    assert response.status_code == expect, "狀態(tài)碼斷言失敗"

/data | /tools

測試數(shù)據(jù)和具體的操作工具類根據(jù)需要自定義

到此這篇關于Pytest接口自動化測試框架搭建模板的文章就介紹到這了,更多相關Pytest搭建模板內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python pytest進階之fixture詳解
  • 詳解Pytest測試用例的執(zhí)行方法
  • Python pytest裝飾器總結(實例詳解)
  • python pytest進階之conftest.py詳解
  • pytest自動化測試fixture的作用域實例化順序及可用性

標簽:西安 安慶 錦州 白城 股票 天水 隨州 日照

巨人網(wǎng)絡通訊聲明:本文標題《Pytest接口自動化測試框架搭建模板》,本文關鍵詞  Pytest,接口,自動化,測試,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Pytest接口自動化測試框架搭建模板》相關的同類信息!
  • 本頁收集關于Pytest接口自動化測試框架搭建模板的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    手机看片1024国产| 97精品人妻一区二区三区| 成人美女av在线直播| 国产亚洲视频系列| 天天躁日日躁狠狠躁av麻豆男男| 国内精品久久久| 91美女精品福利| 国产高清自拍视频| 91色在线视频| 欧美视频在线视频| 一二三区中文字幕| 久色视频在线播放| www日韩中文字幕在线看| 国产美女在线观看一区| 日本黄色动态图| 成人有码在线视频| 一本久久a久久精品亚洲| 艳妇乳肉豪妇荡乳av| 欧美成人三级在线视频| 精品激情国产视频| 久久婷婷色综合| 国产人妻精品一区二区三区不卡| 欧美二区三区| 精品国产免费一区二区三区香蕉| 日本不卡高清视频| 久久久久成人精品无码中文字幕| 成人a在线观看| 欧美日韩在线另类| 国产免费福利视频| 一级在线免费视频| 欧美一级视频一区二区| 亚洲午夜私人影院| 国产一区二区三区四区视频| 男人天堂成人在线| 4444欧美成人kkkk| 午夜精品久久久久久久久| 怡红院男人的天堂| 在线看的黄色网址| 国产精品欧美风情| 色拍拍在线精品视频8848| 日本黄色不卡视频| 黄色av网址在线观看| 俄罗斯精品一区二区三区| 欧美一区国产二区| 精品一区二区日韩| 国产又粗又长又黄的视频| 亚洲电影网站| 社区色欧美激情 | 国产精品久久久久国产精品日日| 久久影视中文字幕| 亚洲综合欧美激情| 成人亲热视频网站| 日韩写真欧美这视频| 国产精品资源在线| 国产乱国产乱老熟300| 少妇一晚三次一区二区三区| 九色91av视频| 午夜久久福利影院| 久久精品日韩欧美| 亚洲无人区码一码二码三码的含义| 欧美视频1区| 亚洲一区999| 亚洲欧洲另类国产综合| 国产高清在线观看视频| 中文字幕无码人妻少妇免费| 免费在线观看91| 在线视频免费一区二区| 亚洲另类色综合网站| a天堂中文在线观看| 呦呦视频在线观看| 亚洲精品9999| 欧美激情精品久久久久久大尺度 | 天天射天天干天天| 欧美精品无码一区二区三区| 国产日韩av在线| 日韩欧美国产小视频| 久久―日本道色综合久久| 无码人妻精品一区二区三区蜜桃91 | 国产激情视频一区二区三区欧美 | 精品在线播放免费| 69xx绿帽三人行| 夫妻免费无码v看片| 成人免费网站在线| 亚洲欧美日韩直播| 亚洲在线视频网站| 美女mm1313爽爽久久久蜜臀| 久久97人妻无码一区二区三区| 人妻内射一区二区在线视频| 中文字幕欧美日韩精品| 男男一级淫片免费播放| 日韩视频专区| 国产69精品久久久| 在线综合视频播放| 国产人成一区二区三区影院| 亚洲国产一二三区| 亚洲黄色免费视频| 一本大道熟女人妻中文字幕在线| 国产mv久久久| 日本三级一区二区| 人妻熟女一二三区夜夜爱| 国产视频福利一区| 日本视频中文字幕一区二区三区| 国产伦精品一区二区三毛| 久久精品视频免费在线观看| 久久精品美女| 欧美国产日本高清在线 | 精品久久久中文字幕人妻| 精品成人无码一区二区三区| 免费毛片网站在线观看| 3d动漫精品啪啪一区二区三区免费| 国产小视频91| 色狠狠综合天天综合综合| 99久久夜色精品国产网站| 国产免费无遮挡| 熟女少妇a性色生活片毛片| 天堂社区在线视频| 四虎永久国产精品| 国产精品久久久久久久久久久久久| 日韩精品在线观看网站| 欧美日韩中国免费专区在线看| 成人黄色国产精品网站大全在线免费观看| 亚洲天堂aaa| 日韩欧美123区| 色诱av手机版| 欧美 日韩 激情| 欧美午夜免费| 国产日韩欧美成人| 超碰日本道色综合久久综合| 日韩视频在线永久播放| 亚洲成人av一区二区三区| 91亚洲精品一区二区乱码| 久久激情一区| 伊人免费在线观看| 国产性xxxx| 亚洲午夜久久久久久久久| 人妻久久久一区二区三区| 欧美日韩精品免费看| 国产精品久久久| 九九久久久久99精品| 精品小视频在线| 欧美日本国产视频| 一区二区三区免费在线观看| 成人av在线一区二区三区| 丝袜美腿亚洲一区二区图片| 精品人妻一区二区三区免费| 成人综合色站| 亚洲社区在线观看| 欧美一区二区三区性视频| 一区二区久久久| 国产午夜亚洲精品羞羞网站| 国产乱淫av一区二区三区| 天天干天天摸天天操| 真实新婚偷拍xxxxx| 国产午夜福利一区二区| 国产又粗又长又黄的视频| 在线观看亚洲免费视频| 中文字幕成人在线视频| 少妇高潮喷水久久久久久久久久| 一区二区不卡视频| 欧洲av一区| 国产精品一区二区三区在线| 国产精品日韩欧美大师| 日本精品视频在线观看| 欧美精品在线播放| 久久精品中文字幕一区| 色综合伊人色综合网| 中文字幕精品网| 一区二区三区亚洲| 国产一区二区三区在线视频| 日韩成人免费视频| 日韩av在线网页| 亚洲电影成人av99爱色| 精品免费国产一区二区三区四区| 欧美精品在线一区二区| 欧美日韩裸体免费视频| 午夜精品久久一牛影视| 图片区小说区国产精品视频| 夜夜嗨av一区二区三区四季av| 亚洲人吸女人奶水| 亚洲婷婷综合久久一本伊一区| 中文字幕欧美国产| 国产精品国产三级国产aⅴ原创| 国产欧美精品国产国产专区| 91亚洲资源网| 欧美国产精品一区二区| 国产精品麻豆久久久| 中文字幕欧美日韩一区| 亚洲欧美色一区| 亚洲一区二区三区三| 亚洲国产aⅴ天堂久久| 欧美日韩国产在线看| 欧美午夜精品久久久久久久| 在线视频一区二区三| 欧美猛男超大videosgay| 91精品国产高清一区二区三区蜜臀| 678五月天丁香亚洲综合网| 日韩视频在线你懂得| 精品视频在线播放免| 一区二区三区四区视频| 色综合久久88色综合天天看泰| 性欧美亚洲xxxx乳在线观看| 国产精品久久久久9999| 1卡2卡3卡精品视频| 九色91在线视频| 亚洲一区二区在线看| 国产精品69久久久| 免费高清在线观看免费| 91插插插插插插插插| 亚洲美女精品视频| 亚洲精品国产精品国自| 国产亚洲精品久久久久久打不开| 亚洲精品成人在线视频| www.四虎在线观看| 久久精品国产一区二区三| 成人免费视频app| 中国色在线观看另类| 亚洲第一av色| 欧美人xxxx| 亚洲免费高清视频| 九九精品视频在线观看| 456亚洲影院| 91免费国产视频| 免费h精品视频在线播放| 亚洲高潮无码久久| 久热精品在线观看视频| 88久久精品无码一区二区毛片| 九九在线观看视频| 伊人久久亚洲综合| 蜜桃av一区二区三区电影| 成人激情校园春色| 亚洲人午夜精品天堂一二香蕉| 色诱视频网站一区| 亚洲第一网中文字幕| 欧美性受xxxxxx黑人xyx性爽| 给我免费观看片在线电影的| 欧美激情 一区| www.中文字幕在线观看| 亚洲毛片欧洲毛片国产一品色| 免费成人在线观看| 久久视频一区二区| 精品国产乱码久久久久久天美| 日韩欧美国产综合| 麻豆乱码国产一区二区三区| 国产欧美一区二区| 小说区图片区图片区另类灬| 成人羞羞国产免费网站| 真人bbbbbbbbb毛片| 日韩乱码一区二区| 天天干免费视频| 91蜜桃在线免费视频| 欧美日韩国产丝袜另类| 亚洲aaa在线观看| 国产高清中文字幕| 熟妇人妻av无码一区二区三区| 成人国产精品免费观看视频| 亚洲高清免费视频| 亚洲第一福利视频| 91黑丝在线观看| 精品午夜一区二区| 99re在线视频免费观看| 色欲AV无码精品一区二区久久 | 中文字幕最新精品| 国产欧美在线观看| 久久最新免费视频| 国产不卡一二三| 亚洲欧美一区二区三区在线观看| 日韩av电影一区| 日韩美女久久久| 欧美va亚洲va香蕉在线| 午夜精品福利视频| 日本不卡一区二区三区视频| 午夜两性免费视频| 青娱乐国产在线| 国产一区二区三区久久精品| 一区二区三区毛片| 亚洲制服欧美久久| 国产精品久久久久影院亚瑟| 国产成人精品综合久久久久99| 亚洲精选一区二区| 中文字幕av无码一区二区三区| 国产精品av在线播放| 成人毛片视频在线观看| 黄色av免费在线播放| 色婷婷激情久久| 亚洲va在线观看| 久久久久亚洲精品| 欧美精品在线免费| 狠狠色综合色区| 国产超碰在线播放| 精品午夜福利在线观看| 男人操女人的视频在线观看欧美| 夜夜爽夜夜爽精品视频| 日韩在线视频网站| 狠狠色噜噜狠狠狠狠色吗综合| 国产精品久久久毛片| 日韩精品1区2区| 成人免费看视频| 国产一区二区在线视频观看| 国产一区二区免费看| 法国空姐在线观看免费| 性久久久久久久| 亚洲精品一区二区三区蜜桃下载| 五月天av网站| 国产精品久久久91| 成人av在线播放网址| 久久久久久久久久久久国产精品| 日韩在线观看精品| 三级网站免费观看| 无人在线观看的免费高清视频| 日韩av网址在线观看| 亚洲欧美国产精品专区久久 | 欧美成人第一区| 韩国三级与黑人| 97超碰国产在线| 国产精品美女一区二区三区| 亚洲男人的天堂网站| 精品无人区一区二区三区| 免费观看污网站| 亚洲av无码一区二区三区性色| 1区2区3区国产精品| 色偷偷888欧美精品久久久| 欧美一区二区在线视频观看| 激情综合丁香五月| 午夜小视频免费| 欧美性高潮在线| 国产91精品久久久久| 日韩小视频在线播放| 亚洲精品1区2区3区| 91视频在线观看免费| 亚洲美女激情视频| 日韩电影免费观看在| 影音先锋制服丝袜| 精品一区二区三区视频| 7777女厕盗摄久久久| 91久久极品少妇xxxxⅹ软件| 一级黄色免费毛片| 丁香花免费高清完整在线播放| 性欧美疯狂xxxxbbbb| 国产成一区二区| 中文字幕22页| 亚洲国产成人精品一区二区三区| 午夜欧美视频在线观看| 日韩av电影手机在线观看| 99视频在线免费| 国产精品欧美综合亚洲| 亚洲大片一区二区三区| 欧美亚洲国产另类| 亚洲免费av一区二区三区| 国产免费一区二区三区免费视频| 亚洲国产精品久久艾草纯爱| 日本欧美黄网站| 91网址在线观看精品| 天天摸天天干天天操| 欧美日韩aaaaaa| 国产一级精品aaaaa看| 性欧美一区二区| 国产91露脸合集magnet| 亚洲视频免费一区| 黑人巨茎大战欧美白妇| 日韩精品人妻中文字幕| 国产精品久久久久久久蜜臀| 久久免费成人精品视频| 最新中文字幕免费视频| 亚洲乱码精品久久久久.. | 国产91精品久久久久久久| 污网站在线免费| 污污网站在线免费观看| 欧美一区二区免费观在线| 欧洲精品亚洲精品| 久久精品女人毛片国产| 国产精品美女久久久久久久久| 午夜剧场成人观在线视频免费观看| 我要看一级黄色大片| 亚洲欧洲综合在线| 亚洲第一av在线| 男人天堂新网址| 国产精品人人爽| 欧美日本一区二区三区四区| 免费成人在线观看av| 久久这里只有精品国产| 国产精品久久久久天堂| 国产福利精品在线| 白嫩情侣偷拍呻吟刺激| 国产成人高清在线| 久久久国产精品视频| 国产三级国产精品国产专区50| 性感美女一级片| 日韩精品免费观看| 91九色丨porny丨国产jk| www.97超碰| 日韩欧美一区中文| 综合一区中文字幕| 中文字幕在线观看精品| 欧美无砖专区一中文字| 亚洲国产欧美日韩| 亚洲综合精品视频| 91麻豆精品国产91久久久久久| 亚洲欧美丝袜| 一本色道久久综合熟妇| 在线91免费看| 男同互操gay射视频在线看| 国产一区二区在线播放视频| 欧美一二三四在线| 路边理发店露脸熟妇泻火| av免费在线不卡| 精品国精品自拍自在线| 日韩人妻无码精品久久久不卡| 香蕉久久国产av一区二区| 亚洲一区999| 男人的天堂最新网址|