1
我想爲一段代碼編寫一個單元測試,其中包括使用大熊貓從相對路徑讀取CSV文件。目錄結構:用相對熊貓文件路徑進行Python鼻子測試
./
./thing1/main.py
./thing1/test_main.py
./thing1/dat/file.csv
./otherthings/...
在main.py
,我有:
def doThings:
pandas.read_csv('dat/file.csv')
if __name__ == '__main__':
doThings()
在test_main.py
,我有
class TestMain:
def setup(self):
doThings()
def test_thing(self):
pass # there's other logic in here
事情正常工作,如果我跑main.py
,但是當我問蟒蛇爲了「運行項目測試」,我得到一個IOError抱怨'dat/file.csv'不存在。這與它是相對路徑的事實有關,因爲當我將它更改爲/home/user/.../thing1/dat/file.csv
時,它可以工作。有沒有一種方法可以在保持相對路徑的同時使單元測試工作?