成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > 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模式, 抽象出頁面類, 頁面類內包含頁面所包含所有接口, 并封裝成方法可供其他模塊直接調用
  • config – 配置文件目錄
  • data – 測試數據目錄
  • 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內的工具函數進行讀寫
請求頭具體參數根據需要自行配置

{
 "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

頁面類模板, 包含頁面接口的請求方法(增刪改查)封裝, 主要在此定義好接口和請求入參等內容

# 導包
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添加接口函數實現(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修改接口函數實現(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查詢接口函數實現(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刪除接口函數實現(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對象

前置測試方法 - 加休眠

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

日志器可通過引入工具調用

# 導包
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調用
    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調用
    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調用
    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調用
    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

測試數據和具體的操作工具類根據需要自定義

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

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

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

巨人網絡通訊聲明:本文標題《Pytest接口自動化測試框架搭建模板》,本文關鍵詞  Pytest,接口,自動化,測試,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Pytest接口自動化測試框架搭建模板》相關的同類信息!
  • 本頁收集關于Pytest接口自動化測試框架搭建模板的相關信息資訊供網民參考!
  • 推薦文章
    免费毛片在线不卡| 日韩在线视频中文字幕| 手机在线理论片| 欧美电影免费观看高清| 91蝌蚪|人| 亚洲av中文无码乱人伦在线视色| 精品久久久久久久一区二区蜜臀| 欧美日韩精品免费观看视完整| 国产在线高清精品| 麻豆传传媒久久久爱| 亚洲精彩视频| 久久久av一区| 亚洲午夜一区二区三区| 中文字幕欧美一区二区| 毛片免费在线| 日韩av自拍| 91久久精品国产| 91freevideo| 免费成人高清在线视频| 欧美精品乱码视频一二专区| 色中色777| 国产精品午夜一区二区三区| 福利一区在线| 国产亚洲精品91在线| 国产美女精品视频| 动漫黄在线观看| 嗯~啊~轻一点视频日本在线观看| 性国裸体高清亚洲| 色吊丝在线永久观看最新版本| 国产精品日产欧美久久久久| 国产高清在线观看免费不卡| 成人av网站免费| 亚洲人与黑人屁股眼交| 亚洲国产日韩欧美在线99| www.国产91| 精品国产成人在线影院| 黄色一区二区在线观看| 秋霞午夜鲁丝一区二区老狼| 国产九九精品| 成人精品视频.| 中文精品电影| 日韩av高清在线| 日韩在线麻豆| 中文字幕人成乱码在线观看| 欧美欧美黄在线二区| 日韩精品久久| 亚洲国产精品人人爽夜夜爽| 久久久国产精品黄毛片| 久久―日本道色综合久久| 亚洲一区二区少妇| 麻豆91精品91久久久| 女人扒开屁股爽桶30分钟| 又大又硬又爽免费视频| 亚洲一区二区在线播放相泽| 人妻熟妇乱又伦精品视频| 欧美亚一区二区| 亚洲电影视频在线| 国产卡二和卡三的视频| 欧美在线日韩在线| 午夜精品在线视频一区| 亚洲天堂精品视频| 豆国产96在线|亚洲| 精品magnet| 精品无码一区二区三区爱欲| 国产欧美日韩在线播放| 国产一区二区三区日韩欧美| 亚洲久久久久久久久久久| 少妇一级淫片免费放播放| 国内精品久久久久久不卡影院| 成人性生交xxxxx网站| 亚洲人成网站在线播| 国产精品毛片一区二区在线看舒淇| 一区二区三区一级片| 日韩国产美国| 日本女人高潮视频| 日韩中文字幕欧美| 国产精品第一| 亚洲最大福利网站| 青春草在线视频免费观看| 男女性激情视频在线观看| 自拍另类欧美| 国产成人亚洲精品| 四虎影院影音| 亚洲xxxx3d| 成人性生交大片免费看午夜| 欧美中日韩在线| 浴室偷拍美女洗澡456在线| 日韩av在线播放网址| 99久久免费精品国产72精品九九| 97国产精东麻豆人妻电影| 国产精品毛片一区视频播| 色的视频在线观看免费播放| www.桃色av嫩草.com| 成人免费图片免费观看| 免费观看成人毛片| 久久香蕉国产线看观看网| 97精品国产97久久久久久免费| 青青视频在线播放| 国产精品三级在线观看无码| 日韩男人的天堂| 精品偷拍各种wc美女嘘嘘| 羞羞影视羞羞在线| 成年人晚上看的视频| 看黄色录像一级片| 日本欧美一区二区| 性欧美18一19内谢| 久久久久久av无码免费网站下载| 久久人人爽人人爽人人片av高清| 午夜影院免费| 日韩精品一区二区三区四区五区| 轻轻色免费在线视频| 欧美精品尤物在线观看| 欧美剧情片在线观看| 亚洲欧洲中文| 91在线看国产| 久热中文字幕在线观看| 男人资源在线播放| 国产一区二区黄色| 永久免费看av| 亚洲精品视频二区| 极品裸体白嫩激情啪啪国产精品| 波多野结衣精品在线| 国产av一区二区三区精品| 色哺乳xxxxhd奶水米仓惠香| 亚洲精品福利| 亚洲欧美国产高清va在线播| 91成人在线视频观看| 九色视频在线观看免费| 欧美hdxxxx| 少妇熟女一区二区| 飘雪影院手机免费高清版在线观看| 蜜桃麻豆影像在线观看| 最近日本中文字幕| 男人添女人下部视频免费| 亚洲国产成人精品激情在线| 日韩精品久久久| 亚洲36d大奶网| 亚洲欧美在线视频观看| 国产免费叼嘿网站免费| 极品尤物av久久免费看| 伊人成人网在线看| 欧美男人天堂网| 国产视频网站一区二区三区| 亚洲av人无码激艳猛片服务器| 午夜精品一区二区三区免费视频| 国产区卡一卡二卡三乱码免费| 最新69国产成人精品视频免费| 日韩精品社区| 精品少妇爆乳无码av无码专区| 亚洲精品久久久久久久蜜桃| 国产一区二区三区美女| 国产成人精品综合| blackedav金发美女大战黑人| 亚洲男人资源| 麻豆精品国产自产在线| 九色porny丨首页在线| 国产午夜精品视频免费不卡69堂| 国产成人91久久精品| 图片区小说区区亚洲影院| 在线免费日韩av| 相泽南亚洲一区二区在线播放| 欧美图片欧美激情欧美精品| 国产精久久久久| 精品一区二区在线观看视频| 亚洲一级一区| 午夜欧美不卡精品aaaaa| 影音先锋黄色网址| 色哟哟在线观看| 一区二区三欧美| 91香蕉国产在线观看软件| 韩国三级hd两男一女| 色视频www在线播放国产| 盗摄系列偷拍视频精品tp| 国产精品视频一区二区图片| 国内久久精品视频| 手机版av在线| 强制捆绑调教一区二区| 精品一区二区三区免费站| 99ri日韩精品视频| www.com黄色片| 最近中文字幕免费视频| 日韩视频在线免费看| 成人黄色网免费| 亚洲午夜久久久久久久国产| 91精品美女| 国产精品探花在线观看| 欧美xxxx中国| 18禁男女爽爽爽午夜网站免费| 国产精品国产三级国产aⅴ无密码| 亚洲第一成年网| 日韩欧美中文字幕制服| 亚洲国产精品久久久久久6q| eeuss在线播放| 国产精品九九九| 这里只有精品在线| 5566中文字幕一区二区| 日韩午夜视频在线观看| 91精品人妻一区二区三区| 无码人妻精品一区二区三应用大全| av网在线观看| 小早川怜子一区二区三区| 国产一级做a爰片久久| 国产精品久久久久久免费| 日日噜噜噜噜久久久精品毛片| 亚洲第一精品福利| 一区在线视频| 国产亚洲精品久久久优势| 国产美女诱惑一区二区| 成人av观看| 伊人成人在线| 国产成人a视频高清在线观看| 99久久精品国产网站| 亚洲精品视频在线观看免费视频| 欧美成人h版| 国产精品国产亚洲精品看不卡15| 成人在线免费公开观看视频| 日韩免费一级片| 亚州欧美一区三区三区在线| 国模叶桐国产精品一区| 综合国产精品久久久| 国产精品一区二区三区在线观| 麻豆网站在线| 一炮成瘾1v1高h| www.久久久久久久久久久| 国产精品一区二区a| 亚洲一二三级电影| 嫩草香蕉在线91一二三区| 国产jzjzjz丝袜老师水多| 九九久久久久久久久激情| 调教+趴+乳夹+国产+精品| 综合婷婷亚洲小说| 国产黄色片中文字幕| 国产真实夫妇交换视频| 欧美日韩少妇| 国产精品吹潮在线观看| 国产精品入口日韩视频大尺度| youjizz.com在线观看| 凹凸日日摸日日碰夜夜| 四虎成人精品在永久在线观看| 欧美一级理论性理论a| 亚洲性生活视频| 国产69视频在线观看| 中文字幕第一区二区| 欧美有码在线| 精品国产中文字幕第一页| 中国黄色片一级| 看黄色一级大片| 欧美激情视频一区二区| 天堂成人在线观看| 中文字幕一区二区三区最新| 成人av手机在线观看| 精品一区二区综合| 男人的天堂va在线| 精品国产亚洲日本| 在线免费观看色| 日韩免费福利电影在线观看| 成人在线观看网站| 精品成人久久久| 一区二区久久精品66国产精品| 国产在线视频一区| 国产人妻精品久久久久野外| av不卡在线看| 欧洲美女7788成人免费视频| 一级国产黄色片| 一代武则天秘史| 中文字幕在线观看视频网站| 黄视频网站在线看| 国产小视频91| 色哟哟精品观看| 久久久久国产精品无码免费看| 久久久国产精品麻豆| 欧洲成人一区二区| 国产成人精品一区二区在线| 美日韩一区二区三区| 国产a亚洲精品| 久久免费精品国产久精品久久久久| 中文字幕永久免费视频| 操人视频在线观看欧美| 亚洲成av人乱码色午夜| 国产熟妇一区二区三区四区| 国产精品久久91| 最新欧美色图| 啊啊啊啊啊啊啊视频在线播放| 欧美一区久久久| 免费看污视频的网站| 中文字幕一区二区三区人妻电影| 国卡一卡二卡三免费网站| 少妇精品视频一区二区免费看| 9191在线视频| 在线成人激情黄色| 国产精品久久婷婷| 亚洲第一会所001| 奇米精品一区二区三区在线观看一| 国产suv精品一区二区6| 午夜dj在线观看高清视频完整版| 国产农村妇女毛片精品久久| 91视频入口| 亚洲天堂av网站| 成人啪啪18免费游戏链接| 精品免费日韩av| 国产jk精品白丝av在线观看| 欧洲三级视频| 能看av的网址| 91桃色在线观看| yellow在线观看网址| 极品蜜桃臀肥臀-x88av| 性xxxfllreexxx少妇| 欧美亚洲午夜视频在线观看| 午夜免费高清视频| 99精品桃花视频在线观看| 国产精品www爽爽爽| 日韩夫妻性生活xx| 色偷偷av男人的天堂| www精品美女久久久tv| 97久久人国产精品婷婷| 秋霞午夜一区二区三区视频| 国产精品人成电影在线观看| 精品一区二区三区视频在线观看| 国产女主播在线一区二区| 97在线观看免费| 黄色av网站在线看| 国产精品九色蝌蚪自拍| 微拍福利一区二区| 国产日产欧美视频| 青青操夜夜操| wwww在线观看免费视频| 欧美成人a视频| 成年人深夜视频|