[英]How to write test cases for a init function by Unit test in python?
[英]How to write unit test for this particular function in python?
文件downloadModule
中有一個函數result = Downloader.downloadFiles(list_to_download, download_path, username, password)
,它將返回一個 boolean(True/False) 到 'result' 變量。 如何為此調用編寫模擬,以便result
始終返回 True。 嘗試了以下方式但得到以下錯誤AttributeError: 'function' object has no attribute 'rsplit'
。
@patch(downloadModule.Downloader.downloadFiles)
def test_download_files(self,mock_download_files):
mock_download_files.return_value = True
self.assertEqual(downloadModule.Downloader.downloadFiles(),True)
我認為您只需添加引號 ( '
) 作為補丁參數downloadModule.Downloader.downloadFiles
的定界符。
您的代碼變為以下內容:
@patch('downloadModule.Downloader.downloadFiles')
def test_download_files(self,mock_download_files):
mock_download_files.return_value = True
self.assertEqual(downloadModule.Downloader.downloadFiles(),True)
下面我顯示了測試文件,其中存在語句:
import downloadModule
導入模塊downloadModule
。 以下是我在我的系統上使用的完整測試文件:
import unittest
from unittest.mock import patch
import downloadModule
class MyTestCase(unittest.TestCase):
@patch('downloadModule.Downloader.downloadFiles')
def test_download_files(self, mock_download_files):
mock_download_files.return_value = True
self.assertEqual(downloadModule.Downloader.downloadFiles(), True)
if __name__ == '__main__':
unittest.main()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.