久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

一個模擬/存根 python 模塊如何像 urllib

How can one mock/stub python module like urllib(一個模擬/存根 python 模塊如何像 urllib)
本文介紹了一個模擬/存根 python 模塊如何像 urllib的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我需要測試一個需要使用 urllib.urlopen 查詢外部服務器上的頁面的函數(它也使用 urllib.urlencode).服務器可能已關閉,頁面可能會更改;我不能依賴它進行測試.

I need to test a function that needs to query a page on an external server using urllib.urlopen (it also uses urllib.urlencode). The server could be down, the page could change; I can't rely on it for a test.

控制 urllib.urlopen 返回什么的最佳方法是什么?

What is the best way to control what urllib.urlopen returns?

推薦答案

另一個簡單的方法是讓你的測試覆蓋 urllib 的 urlopen() 函數.例如,如果您的模塊有

Another simple approach is to have your test override urllib's urlopen() function. For example, if your module has

import urllib

def some_function_that_uses_urllib():
    ...
    urllib.urlopen()
    ...

你可以這樣定義你的測試:

You could define your test like this:

import mymodule

def dummy_urlopen(url):
    ...

mymodule.urllib.urlopen = dummy_urlopen

然后,當您的測試調用 mymodule 中的函數時,將調用 dummy_urlopen() 而不是真正的 urlopen().像 Python 這樣的動態語言使得為測試提取方法和類變得非常容易.

Then, when your tests invoke functions in mymodule, dummy_urlopen() will be called instead of the real urlopen(). Dynamic languages like Python make it super easy to stub out methods and classes for testing.

請參閱我在 http://softwarecorner.wordpress.com/ 上的博客文章,了解有關存根的更多信息測試的依賴項.

See my blog posts at http://softwarecorner.wordpress.com/ for more information about stubbing out dependencies for tests.

這篇關于一個模擬/存根 python 模塊如何像 urllib的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

How should I verify a log message when testing Python code under nose?(在鼻子下測試 Python 代碼時,我應該如何驗證日志消息?)
Patch __call__ of a function(修補函數的 __call__)
How to call self in a mock method of an object in Python?(如何在 Python 中對象的模擬方法中調用 self?)
Mocking only a single method on an object(僅模擬對象上的單個方法)
Mocking a subprocess call in Python(在 Python 中模擬子進程調用)
Checking call order across multiple mocks(檢查多個模擬的調用順序)
主站蜘蛛池模板: 中文字幕在线二区 | 日本午夜视频 | 91视频免费观看 | 国产精品久久久久久一区二区三区 | 成人精品一区二区 | 久久精品色欧美aⅴ一区二区 | www.亚洲视频 | 国产精品美女www爽爽爽 | 亚洲狠狠丁香婷婷综合久久久 | 中文字幕一级毛片视频 | 性欧美精品一区二区三区在线播放 | 一区二区亚洲 | 91九色婷婷 | 欧美一级黄色片免费观看 | 婷婷成人在线 | 九九精品在线 | 欧美一级在线观看 | 中国美女av | 中文字幕av第一页 | 综合久久99 | 国产综合精品一区二区三区 | www.av在线| 我要看免费一级毛片 | 国产精品久久久乱弄 | 国产乱码精品一区二区三区五月婷 | 国产网站在线播放 | 国产三级精品三级在线观看四季网 | 成人a免费| 国产91丝袜在线播放 | 国产福利在线 | 欧美日韩网站 | 午夜视频在线免费观看 | 欧美亚洲国产一区 | 欧美视频第三页 | 久久精品亚洲 | 亚洲人免费视频 | 成人在线视频网址 | 国产在线97 | 视频在线观看一区 | 免费观看一级特黄欧美大片 | 国产精品一区二区欧美黑人喷潮水 |