я новичок в Python и блок test.following является основным UnitTest программы, которая вызывает другие программы питона, который действует как тестовые примерывызов отдельной программы питона в тестовом модуле
import unittest
from test import test_support
class MyTestCase1(unittest.TestCase):
def test_feature_one(self):
print "testing feature one"
execfile("/root/test/add.py")
def test_main():
test_support.run_unittest(MyTestCase1);
if __name__ == '__main__':
test_main()
add.py является основной программой, которая добавляет два нет и отображает его.
#!/usr/bin/env python
import sys
def disp(r):
print r
def add():
res = 3+5;
disp(res)
add()
, но есть проблемы, когда я вызываю функцию из другой функции. я нажимаю следующую ошибку, когда я пытаюсь запустить единичный тест (первая программа). Но если я запустил add.py в качестве отдельной программы вне модульного теста, он отлично работает. любезно нужна помощь в понимании этого сценарий
======================================================================
ERROR: test_feature_one (__main__.MyTestCase1)
----------------------------------------------------------------------
Traceback (most recent call last):
File "first.py", line 17, in test_feature_one
execfile("/root/test/add.py")
File "/root/test/add.py", line 12, in <module>
add()
File "/root/test/add.py", line 10, in add
disp(res)
NameError: global name 'disp' is not defined
----------------------------------------------------------------------