Вызовите тестовый модуль Python из другого скрипта и экспортируйте все сообщения об ошибках.
Извините за основной вопрос. Я использовал метод unittest, чтобы проверить мои модели в одном скрипте. Теперь мой вопрос: как мне вызвать этот скрипт из другого файла и сохранить результаты тестирования? Ниже приведен мой пример кода:
**model_test.py**
import unittest
import model_eq #script has models
class modelOutputTest(unittest.TestCase):
def setUp(self):
#####Pre-defined inputs########
self.dsed_in=[1,2]
#####Pre-defined outputs########
self.msed_out=[6,24]
#####TestCase run variables########
self.tot_iter=len(self.a_in)
def testMsed(self):
for i in range(self.tot_iter):
fun = model_eq.msed(self.dsed_in[i],self.a_in[i],self.pb_in[i])
value = self.msed_out[i]
testFailureMessage = "Test of function name: %s iteration: %i expected: %i != calculated: %i" % ("msed",i,value,fun)
self.assertEqual(round(fun,3),round(self.msed_out[i],3),testFailureMessage)
if __name__ == '__main__':
unittest.main()
Следующий шаг, который я хочу, это создать другой скрипт с именем test_page.py, который запускает скрипт модульного теста и сохраняет результаты в переменной (мне нужно опубликовать результаты на веб-странице).
test_page.py
from model_test.py import *
a=modelOutputTest.testMsed()
Однако я получил следующие ошибки.
Traceback (most recent call last):
File "D:\Dropbox\AppPest\rice\Rice_unittest.py", line 16, in <module>
a= RiceOutputTest.testMsed()
TypeError: unbound method testMsed() must be called with RiceOutputTest instance as first argument (got nothing instead)
Кто-нибудь может дать мне несколько советов? Спасибо!
Спасибо за помощь от Nix! Мой следующий вопрос: мне нужно проверить функцию с двумя заданными случаями в цикле. ОпубликованоВот.