-3
我遇到過這個問題好幾次了,不知道該如何處理它。我的許多測試功能(例如test_add
)返回NameError
,但測試的功能在那裏。例如:Python的NameError在testfunctions
def test_add():
'''Testfunction for add'''
assert add(1)==[1]
assert add(2)==[1, 2]
assert add(3)==[1, 2, 3]
def add(n):
pass
可能是什麼問題?
好,這裏是實際代碼:
def test_add():
'''Testfunction for add'''
assert add(1)==li+[1]
assert add(2)==li+[1, 2]
assert add(3)==li+[1, 2, 3]
def add(n):
'''Adds a new element to the list of scores.
n is an integer number between 1 and 100.
Returns the new list'''
global li
li.append(n)
return li
它是一個更長計劃的一部分,所以我不能發佈這一切。當我運行testfunction時,它給了我一個名稱錯誤,說'add'沒有被定義。
該代碼將給出一個AssertionError,而不是NameError。 –
你能提供一個可重現的例子嗎? –
是的,沒有名字,所以沒有NameError。除了函數'add()' - 你確定它不在單獨的文件或作用域中,因此無法從'test_add()'內部到達嗎? –