下面的函數打開並加載Json文件。我的問題是什麼是測試它的最好方法?如何進行單元測試打開json文件的功能?
def read_file_data(filename, path):
os.chdir(path)
with open(filename, encoding="utf8") as data_file:
json_data = json.load(data_file)
return json_data
filename
和path
形式傳入sys.argv中的。
我想,我需要的樣本數據在我的測試案例的開始,但不知道我怎麼會真正使用它來測試該函數
class TestMyFunctions(unittest.TestCase):
def test_read_file_data(self):
sample_json = {
'name' : 'John',
'shares' : 100,
'price' : 1230.23
}
任何指針將不勝感激。
'self.assertEqual(sample_json,read_file_data(文件名,路徑))'的所有代碼 – DeepSpace
第一隻使該標準Python庫的API調用。該代碼已經過測試,不應再次測試,只應測試自己的代碼。其次,函數涉及使用代碼外部的資源(文件):在單元測試中,您通常會嘲笑這些資源。 This [article](https://www.toptal.com/python/an-introduction-to-mocking-in-python)可能會給你一些想法 –