文章目錄
- mock簡介
- 導入方式
- 參數簡介
- 使用場景(待更新)
- 常見問題總結(待更新)
- Python代碼
- 官網
mock簡介
mock是一個模擬對象庫,具有模擬其他python對象的功能,還能指定模擬對象的返回值和設置模擬對象的屬性。
導入方式
python3.4之前的版本:還沒有加入到標準庫
python3.4及之后的版本:from unittest import mock
參數簡介
使用場景(待更新)
- 場景一
- 場景二
- 場景三
- 場景四
- 場景五
常見問題總結(待更新)
- 問題一
- 問題二
- 問題三
Python代碼
import math
import unittest
from unittest import mockclass TestMath(unittest.TestCase):@mock.patch.object(math, "ceil") # 裝飾器,模擬math中的ceil函數@mock.patch.object(math, "degrees") # 裝飾器,模擬math中的degrees函數@mock.patch.object(math, "gcd") # 裝飾器,模擬math中的gcd函數def test_math(self, test_mock1, test_mock2, test_mock3):# 設置模擬對象的返回值test_mock1.return_value = 1 # gcdtest_mock2.return_value = 2 # degreestest_mock3.return_value = 3 # ceilprint("ceil=%d" % math.ceil(1))print("degrees=%d" % math.degrees(1))print("gcd=%d" % math.gcd(1))
官網
https://docs.python.org/3.4/library/unittest.mock-examples.html
https://docs.python.org/3.4/library/unittest.mock.html