pytest-mock是一個基於python自帶的unittest.mock所做的包裝,可以讓我們使用pytest撰寫測試時能更容易調用mock。
Aug 13, 2023Contributed by
續上篇講解完
Jul 16, 2023Contributed by
引言 如果你曾經用過unittest.mock.patch,不知道在使用時你有沒有一個疑問: 我這個patch用下去,究竟要patch哪裡? 我是誰,我在哪裡 案例 如果今天我們的資料夾結構長這樣 root/ ----app/
Jun 18, 2023Contributed by
序言 在之前的幾篇隨筆中,各位應該不難發現,在測試進行時,我們需要import被測試的module,畢竟要測試一個函式的功能,首先得先把他抓出來吧。 但如果今天被測試的對象是一個Flask的API呢? @app.route('/login', methods=['GET', 'POST']) def login(): # 簡單的登入實作,get時給登入頁的html,post時驗證輸入的帳號密碼 if request.method == 'POST':
May 21, 2023Contributed by
序言 今天隨筆的主題是VCR 各位如果在須測試的程式中,有使用別人開發的API,或是去爬一些網頁的時候,一定會覺得在撰寫測試的過程中覺得厭世。 為什麼? 想像一個API會回傳多少資訊,要注意response的格式對不對,headers可能也要注意,算上別的意外,如果要把這個API的所有回傳都mock,那會有複數的mock需要維護,我們就只能對著API一個一個把mock刻出來。 但是別擔心,今天的我們有...VCR! pytest-recording
May 09, 2023Contributed by
序言 在各種程式與環境組合起來運行時,我們常常會遇到一個問題: 這段code剛剛在我的電腦上還會動阿?怎麼到別台電腦就壞了? 環境的不同/網路連線狀態的差異/port設定/ENV設定/random seed...有太多種可能 這種不穩定的情況若是在測試過程中發生,我們就稱之為 Flaky Test flaky有什麼問題?
May 05, 2023Contributed by
在使用pytest-mock的mocker fixture時 所有mock假造的物件都會在當個測試結束時被關掉,所以不會影響其他測試 但如果發生了以下的事情 def test_function(mocker): mock1 = mocker.patch('module1.function1') # Do some test using mock1 to generate something you want
May 03, 2023Contributed by
閱讀本文前,我們會假設各位都知道 fixture是一個"測試單元都能拿去用的公共物件"
May 02, 2023Contributed by
有天用projection query的時候看到我的output居然增殖了 from google.cloud import datastore client = datastore.Client() query = client.query(kind='Person') query.projection = ['emails'] results = query.fetch() 如果只看這段程式碼,應該會覺得“就很一般的投影查詢,我只要看找下來的entity內的email column而已”。
Feb 23, 2023Contributed by
2023年的第一個Taipei.py結束瞜 這邊會簡短的分享一下本次的內容,希望這之後會成為固定的月刊 2023年1月的meetup連結在此: https://www.meetup.com/taipei-py/events/290416829/ 演講1. Static Application Security with Snyk snyk的介紹 先上github
Jan 13, 2023Contributed by
https://plugins.jetbrains.com/plugin/11084-pylint
Dec 30, 2022Contributed by
最近在處理gcp datastore下來的資料時發現一個情況之前沒有處理過,簡單介紹一下 假設我們有一個列表,其中包含了一些數字: numbers = [1, 2, 3, 4] # 遍歷列表並顯示每個數字 for number in numbers: print(number)
Dec 28, 2022Contributed by