-1
我已經創建鼻試驗:鼻子需要2個參數
import nose
from nose.tools import istest, nottest
nose.run()
path1 = "/some/my/path1/"
path2 = "/some/my/path2/"
@istest
def compare_dir(path1, path2):
my_bool = mytest, bool
yield my_test, my_bool
sub_path1 = path1 + "some_path"
sub_path2 = path2 + "some_path"
compare_dir(sub_path1, sub_path2)
def my_test(is_equal):
assert is_equal, "Not equal!"
而且我有錯誤:
Traceback (most recent call last):
File "/Python27/lib/site-packages/nose/case.py", line 197, in runTest
self.test(*self.arg)
TypeError: compare_dir() takes exactly 2 arguments (0 given)
什麼是我做錯了什麼?我已經爲compare_dir
提供了2個參數。 我已經開始試驗,
/path/to/my/test/my_test_name.py --tests=my_test_name
非常感謝! 'def compare_dir(path1 = path1,path2 = path2):'這個工作正常!但爲什麼它不能從4條和5條線獲得價值? –
因爲當你在一個函數中加入類似這樣的值時,你說這就是你想調用的函數內部傳遞的任何東西。所以它假設它們是僅在該函數內部使用的全新變量。 –
你可以在你的代碼中用'compare_dir(path1,path2)'調用它,但函數開始處的所有已定義變量都默認爲空,並且需要填入。 –