Заранее прошу прощение за какие-то пробелы в знаниях по Python. Мне достался в “наследство” некоторый немалый по размерам проект. Я не могу оценить качество кода в нём (хотя пишу уже на python около 3х месяцев) и насколько он соответствует pythonic way, но это и не суть сейчас. Структура папок проекта примерно такая (не ругайте сильно если что не так):
projectname
—somefolder1
—somefolder2
——somesubfolder
———__init__.py
———module1.py
———module2.py
—tests
——testsomesubfolder1
———__init__.py
———recipy1.py
—project.py
Script: D:\project\projectname\project.py … Working directory: D:\project\projectname
Я хочу покрыть некоторые части этого проекта unittest'ами. Например, мне необходимо написать тест в recipy1.py для некоторого класса из somefolder1/somesubfolder/module1.py Как мне правильно сделать import для module1 в recipy1:
# recipy1.py
# как написать import для module1?
import unittest
class Test1(unittest.TestCase):
def test_testtest(self):
self.assertEquals(100,100)
def test_fakeclass(self):
obj = module1.SomeClass( 10 )
self.assertEquals(10, obj.GetValue() )
if __name__ == '__main__':
unittest.main()
чтобы у меня в recipy1.py был доступен некоторый класс SomeClass из module1.py:
# module1.py
class SomeClass():
def __init__(self, value):
self.value = value
def GetValue(self):
return self.value
Вообще правильно ли я делаю, что пишу тесты в отдельной папке? Во многих статья и литературе это видел? Имеет ли значение Working directory, указанная в конфигурации python для запуска проекта (запуска project.py). Какой Working directory мне необхождимо указать для тестов?