婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > python 如何在測試中使用 Mock

python 如何在測試中使用 Mock

熱門標簽:正安縣地圖標注app 舉辦過冬奧會的城市地圖標注 電銷機器人系統廠家鄭州 400電話申請資格 螳螂科技外呼系統怎么用 qt百度地圖標注 地圖地圖標注有嘆號 遼寧智能外呼系統需要多少錢 阿里電話機器人對話

Mock概念

mock 的意思是模擬,也就是模擬接口返回的信息,用已有的信息替換它需要返回的信息,從實現對所依賴的模塊的測試。

一般有兩種場景:

  • 前端對后端接口的 mock,
  • 后端服務之間的測試中涉及的mock,常常發生在單元測試的時候。

前端mock可以通過一些工具來完成:

  • 使用抓包工具Fiddler,Charles 來實現,通過修改代理返回的數據,實現多種場景的測試。
  • 使用一些API管理工具來模擬,比如yapi,Easy Mock 等
  • 當然有編碼能力的,也可以使用node.js,python的fastAPI來模擬

后端的 Mock 則是從接口的角度,如果一個接口A返回的數據需要依賴于另一個接口B,當敏捷開發中B接口還未開發完全時候這里會需要用到 Mock。

對于測試人員,對接口測試的時候,部分接口尚未開發完成,在約定了接口定義之后,也可以使用 Mock 來模擬。

在 python3.X 中 Mock 模塊已經被集成到unittest里面。

Mock類

class Mock(spec=None,side_effect=None,return_value=DEFAULT,name=None)

  • spec:定義Mock對象的屬性值,可以是一個列表,字符串,一個對象的實例
  • side_effect:可以用來拋出異常或者動態改變返回值,可以覆蓋return_value
  • return_value:定義mock的返回值
  • name:作為mock對象的標識可以在print時候看到

簡單的例子體驗下 Mock 的功能特點

from unittest import mock
def add(num1,num2):
 return num1 + num2 # pass
 
add = mock.Mock(return_value=200) # 創建mock對象
 
print( add(10,20) )

你會發現無論輸入的參數是什么,輸出結果都是200。等于方法被 Mock 攔截處理了。

一個相對正式的 Mock 例子

正常情況:

import requests
def request_scm():
 # res = requests.get('http://www.mysx-scm.com')
 res = requests.get('http://baidu.com')
 return res.status_code

import unittest
from unittest import mock
class TestScmApi(unittest.TestCase):
 
 def testUrl(self):
  # request_scm = mock.Mock(return_value=200)
  self.assertEqual(request_scm(), 200, msg='testUrl 出現錯誤')

if __name__ == '__main__':
 unittest.main()

可以分別把兩個 # 注釋移到下一句試試。

一個完整的測試例子

import requests

class scmapi():
 def request_scm():
  res = requests.get('http://www.mysx-scm.com')
  # res = requests.get('http://baidu.com')
  return res.status_code

 def pay_alipay():
  '''
  待實現
  return 200
  '''
  return 0
 

import unittest
from unittest import mock

class TestScmApi(unittest.TestCase):
 
 needmock = True
 def setUpClass():
  print("setUpClass():所有方法之前執行")

 def tearDownClass():
  print("tearDownClass():所有方法之后執行")
  
 def setUp(self):
  self.scmapi = scmapi()
  print("setUp():每個方法之前執行")

 def tearDown(self):
  print("teardown():每個方法之后執行")
 
 def test_request_scm(self):
  if self.needmock:
   scmapi.request_scm = mock.Mock(return_value=200)
  self.assertEqual(scmapi.request_scm(), 200, msg='test_request_scm 出現錯誤')

 def test_pay_alipay(self):
  if self.needmock:
   scmapi.pay_alipay = mock.Mock(return_value=200)
  self.assertEqual(scmapi.pay_alipay(), 200, msg='test_pay_alipay 出現錯誤')

if __name__ == '__main__':
 unittest.main()

斷言方法

基本的斷言方法提供了測試結果是True還是False。所有的斷言方法都有一個msg參數,如果指定msg參數的值,則將該信息作為失敗的錯誤信息返回。

序號 斷言方法 斷言描述
1 assertEqual(arg1, arg2, msg=None) 驗證arg1=arg2,不等則fail
2 assertNotEqual(arg1, arg2, msg=None) 驗證arg1 != arg2, 相等則fail
3 assertTrue(expr, msg=None) 驗證expr是true,如果為false,則fail
4 assertFalse(expr,msg=None) 驗證expr是false,如果為true,則fail
5 assertIs(arg1, arg2, msg=None) 驗證arg1、arg2是同一個對象,不是則fail
6 assertIsNot(arg1, arg2, msg=None) 驗證arg1、arg2不是同一個對象,是則fail
7 assertIsNone(expr, msg=None) 驗證expr是None,不是則fail
8 assertIsNotNone(expr, msg=None) 驗證expr不是None,是則fail
9 assertIn(arg1, arg2, msg=None) 驗證arg1是arg2的子串,不是則fail
10 assertNotIn(arg1, arg2, msg=None) 驗證arg1不是arg2的子串,是則fail
11 assertIsInstance(obj, cls, msg=None) 驗證obj是cls的實例,不是則fail
12 assertNotIsInstance(obj, cls, msg=None) 驗證obj不是cls的實例,是則fail

以上就是python 如何在測試中使用 Mock的詳細內容,更多關于python 測試中使用Mock的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • python測試框架unittest和pytest區別
  • python使用pytest接口自動化測試的使用
  • python 如何用 Hypothesis 來自動化單元測試
  • python 基于DDT實現數據驅動測試
  • Python自動化測試基礎必備知識點總結
  • Python3 + Appium + 安卓模擬器實現APP自動化測試并生成測試報告
  • 基于Python的接口自動化unittest測試框架和ddt數據驅動詳解
  • Appium+Python實現簡單的自動化登錄測試的實現
  • python如何進行基準測試

標簽:濟源 阜新 信陽 昭通 合肥 興安盟 隨州 淘寶好評回訪

巨人網絡通訊聲明:本文標題《python 如何在測試中使用 Mock》,本文關鍵詞  python,如,何在,測試,中,使用,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python 如何在測試中使用 Mock》相關的同類信息!
  • 本頁收集關于python 如何在測試中使用 Mock的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人黄色网址在线观看| 欧美日韩成人在线| 蜜桃视频在线观看一区二区| 国内欧美视频一区二区| 一本一道久久a久久精品综合蜜臀 一本一道综合狠狠老 | 欧美日韩成人综合天天影院| 亚洲三级电影网站| 欧洲一区二区三区免费视频| 亚洲欧美影音先锋| 国产成人免费在线视频| 久久综合久久综合久久| 国产精品一二三四区| 欧美成人在线直播| 亚洲一区二区三区四区五区黄 | 亚洲第一激情av| 看电影不卡的网站| 久久久亚洲欧洲日产国码αv| 国产成人一区二区精品非洲| 久久精品免费在线观看| 成人性生交大合| 亚洲激情中文1区| 欧美性大战久久久久久久蜜臀| 一区二区三区av电影| 欧美日韩性生活| 国产成人午夜精品影院观看视频| 国产精品成人一区二区三区夜夜夜 | 亚洲男人的天堂在线观看| 日本韩国欧美三级| 免费欧美高清视频| 国产嫩草影院久久久久| 日本高清无吗v一区| 日韩精品电影在线观看| 久久精品人人做| 欧美精品一区二区三区蜜桃| 免费高清不卡av| 亚洲国产成人在线| 欧美午夜精品电影| 国产精品综合视频| 亚洲高清免费视频| 91免费版pro下载短视频| 亚洲福利视频三区| 国产免费久久精品| 日韩欧美一区在线| 色综合网色综合| 韩国欧美一区二区| 午夜精品免费在线| 亚洲欧洲日韩综合一区二区| 日韩欧美在线综合网| 99久久99久久精品国产片果冻| 视频一区二区中文字幕| 国产日产精品一区| 日韩一区二区免费电影| 在线观看国产91| av不卡一区二区三区| 久久成人久久鬼色| 污片在线观看一区二区| 国产精品沙发午睡系列990531| 91麻豆精品国产综合久久久久久| 色婷婷亚洲一区二区三区| 国产一区二三区| 日产国产高清一区二区三区 | 亚洲成人午夜电影| 国产日韩精品一区| 日韩欧美中文字幕精品| 欧美丝袜自拍制服另类| 91麻豆蜜桃一区二区三区| 国产经典欧美精品| 国产一区 二区 三区一级| 日韩高清不卡一区| 亚洲www啪成人一区二区麻豆| 中文字幕日韩av资源站| 欧美国产乱子伦| 久久综合九色综合久久久精品综合| 欧美日韩国产综合一区二区三区 | 婷婷成人激情在线网| 欧美疯狂性受xxxxx喷水图片| 亚洲国产一区二区三区青草影视| 国产日韩精品一区二区浪潮av| 日韩欧美一级二级三级久久久| 色噜噜狠狠一区二区三区果冻| 2020国产成人综合网| 色诱视频网站一区| 99re视频这里只有精品| 色综合久久66| 成人h动漫精品一区二区| 国内久久精品视频| 成人自拍视频在线| 国产精品一色哟哟哟| 久久99国产精品久久99 | 美女一区二区三区在线观看| 日韩国产欧美在线视频| 免费亚洲电影在线| 国产欧美日韩在线观看| 欧美成人福利视频| 欧美中文字幕一区| 日韩精彩视频在线观看| 麻豆精品视频在线观看免费| 国产日本一区二区| 国产精品久久久一区麻豆最新章节| 国产精品福利影院| 亚洲精品在线观看网站| 欧美日韩一区二区在线观看视频 | 国产精品欧美久久久久无广告 | 一区二区三区欧美激情| 亚洲成人自拍网| 国产一区激情在线| 99久久精品国产导航| 在线亚洲一区观看| 欧美二区三区的天堂| 国产女人18水真多18精品一级做| 亚洲免费观看视频| 免费视频最近日韩| 国产欧美一区视频| 精品福利一区二区三区| 国产精品情趣视频| 国产精品久久久久aaaa樱花| 综合久久久久久久| 国产在线视频不卡二| 一区二区三区在线播放| 精品精品欲导航| 日本不卡的三区四区五区| 国产一区二区主播在线| 欧美亚洲综合色| 国产欧美日韩亚州综合| 日本不卡高清视频| av激情亚洲男人天堂| 精品88久久久久88久久久| 国产精品久久久一本精品 | 国产精品欧美极品| 国产一区三区三区| 国产白丝精品91爽爽久久| 亚洲精品你懂的| 精品免费国产一区二区三区四区| 欧美高清在线一区| 欧美视频自拍偷拍| 亚洲视频在线观看三级| 国产亚洲精品7777| 亚洲动漫第一页| 91免费版pro下载短视频| 国产日韩高清在线| 国产一区在线视频| 精品国产乱码久久久久久1区2区| 亚洲高清视频的网址| 91麻豆国产福利精品| 久久久精品天堂| 久久av中文字幕片| 精品少妇一区二区三区视频免付费 | 久久色.com| 免费成人av在线播放| 一本色道久久综合亚洲91| 国产精品国产三级国产aⅴ原创| 国产乱子伦一区二区三区国色天香| 91精品国产品国语在线不卡| 中文字幕欧美区| 亚洲国产aⅴ成人精品无吗| 99久久er热在这里只有精品66| 日韩欧美激情在线| 精品亚洲国产成人av制服丝袜| 3d成人h动漫网站入口| 日韩av网站免费在线| 欧美妇女性影城| 亚洲精品一线二线三线| 国产精品视频看| 色爱区综合激月婷婷| 亚洲综合激情网| 日韩欧美中文一区二区| 久久精品国产77777蜜臀| 欧美中文字幕亚洲一区二区va在线| 亚洲人一二三区| 欧美中文字幕久久| 日韩成人伦理电影在线观看| 日韩免费视频一区二区| 国产一区二区美女诱惑| 日本一区二区综合亚洲| av在线不卡免费看| 一区二区三区 在线观看视频| 欧美亚洲综合久久| 午夜精品影院在线观看| 久久九九国产精品| 91网站在线播放| 日韩av高清在线观看| 国产精品区一区二区三| 国内精品国产三级国产a久久| 国产精品你懂的| 午夜成人在线视频| 欧美日韩视频一区二区| 亚洲国产精品久久久久婷婷884 | 成人一级片网址| 亚洲欧美另类图片小说| 欧美日韩欧美一区二区| 激情偷乱视频一区二区三区| 久久久久久久综合狠狠综合| 色呦呦一区二区三区| 日韩高清一区二区| 成人欧美一区二区三区黑人麻豆 | 精品亚洲porn| 亚洲婷婷在线视频| 欧美一区二区人人喊爽| 欧美xxxx在线观看| 99国产精品久久久久久久久久久 |