Первый файл - mytestmain.py .Он вызывает функцию test внутри отдельного модуля mytest.py .
# Load file mytest.py from the working directory.
# The calling file is "mytestmain.py", also in the working directory.
import mytest
print(mytest)
# output example: <module 'mytest' from 'c:\\python\\so\\mytest.py'>
data1 = 2
answer1 = 4
data2 = 3
answer2 = 10
# Call function "test" inside "mytest.py" module.
# Function "test" calculates a square of a number.
# Test1 with data1=2. Test answer1 is 4.
# This is the correct answer, test should pass.
result = mytest.test(data1, answer1)
print("Result1: ", result)
# Test2 with data2=3. Test answer2 is 10.
# This is the wrong answer, test should fail.
result = mytest.test(data2, answer2)
print("Result2: ", result)
Второй файл mytest.py , который имеетфункция test .Этот файл загружается только один раз.
# testing module, named mytest.py
def test(data, answer):
if data:
# If data exists, compare with answer.
if answer == data * data:
return "Pass"
else:
return "Fail"
# Call test function.
# result = test(2, 4)
# print(result)
# result = test(3, 10)
# print(result)
Перезагрузка необходима только при изменении параметра внутри файла mytest.py .Для тестирования обычным рабочим процессом является передача новых параметров в файл тестирования, а не попытка изменить эти параметры из файла теста.Я вижу, что перезагрузка часто используется в ноутбуках Jupyter, где люди испытывают различные параметры в одном большом проекте, который разделен на несколько ноутбуков.Отдельные записные книжки не выполняют другой функции.Они разделены, чтобы сделать каждый файл короче, но все файлы составляют одну единицу.